@theia/plugin-ext 1.51.0 → 1.53.0-next.4

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 (305) hide show
  1. package/lib/common/plugin-api-rpc-model.d.ts +13 -2
  2. package/lib/common/plugin-api-rpc-model.d.ts.map +1 -1
  3. package/lib/common/plugin-api-rpc.d.ts +25 -17
  4. package/lib/common/plugin-api-rpc.d.ts.map +1 -1
  5. package/lib/common/plugin-api-rpc.js.map +1 -1
  6. package/lib/hosted/browser/worker/worker-main.js +2 -2
  7. package/lib/hosted/browser/worker/worker-main.js.map +1 -1
  8. package/lib/hosted/node/hosted-plugin-process.d.ts +1 -1
  9. package/lib/hosted/node/hosted-plugin-process.d.ts.map +1 -1
  10. package/lib/hosted/node/hosted-plugin-process.js +2 -2
  11. package/lib/hosted/node/hosted-plugin-process.js.map +1 -1
  12. package/lib/hosted/node/hosted-plugin.d.ts +1 -1
  13. package/lib/hosted/node/hosted-plugin.d.ts.map +1 -1
  14. package/lib/hosted/node/hosted-plugin.js +2 -2
  15. package/lib/hosted/node/hosted-plugin.js.map +1 -1
  16. package/lib/hosted/node/plugin-service.d.ts +1 -0
  17. package/lib/hosted/node/plugin-service.d.ts.map +1 -1
  18. package/lib/hosted/node/plugin-service.js +4 -1
  19. package/lib/hosted/node/plugin-service.js.map +1 -1
  20. package/lib/hosted/node/scanners/scanner-theia.d.ts.map +1 -1
  21. package/lib/hosted/node/scanners/scanner-theia.js +1 -0
  22. package/lib/hosted/node/scanners/scanner-theia.js.map +1 -1
  23. package/lib/main/browser/authentication-main.d.ts +4 -2
  24. package/lib/main/browser/authentication-main.d.ts.map +1 -1
  25. package/lib/main/browser/command-registry-main.d.ts +4 -2
  26. package/lib/main/browser/command-registry-main.d.ts.map +1 -1
  27. package/lib/main/browser/custom-editors/custom-editor-undo-redo-handler.d.ts +10 -0
  28. package/lib/main/browser/custom-editors/custom-editor-undo-redo-handler.d.ts.map +1 -0
  29. package/lib/main/browser/custom-editors/{custom-editor-contribution.js → custom-editor-undo-redo-handler.js} +23 -17
  30. package/lib/main/browser/custom-editors/custom-editor-undo-redo-handler.js.map +1 -0
  31. package/lib/main/browser/custom-editors/custom-editor-widget.d.ts +0 -2
  32. package/lib/main/browser/custom-editors/custom-editor-widget.d.ts.map +1 -1
  33. package/lib/main/browser/custom-editors/custom-editor-widget.js +2 -7
  34. package/lib/main/browser/custom-editors/custom-editor-widget.js.map +1 -1
  35. package/lib/main/browser/custom-editors/custom-editors-main.d.ts +10 -4
  36. package/lib/main/browser/custom-editors/custom-editors-main.d.ts.map +1 -1
  37. package/lib/main/browser/custom-editors/custom-editors-main.js +6 -0
  38. package/lib/main/browser/custom-editors/custom-editors-main.js.map +1 -1
  39. package/lib/main/browser/debug/debug-main.d.ts +3 -0
  40. package/lib/main/browser/debug/debug-main.d.ts.map +1 -1
  41. package/lib/main/browser/debug/debug-main.js +20 -2
  42. package/lib/main/browser/debug/debug-main.js.map +1 -1
  43. package/lib/main/browser/debug/plugin-debug-service.d.ts +4 -2
  44. package/lib/main/browser/debug/plugin-debug-service.d.ts.map +1 -1
  45. package/lib/main/browser/debug/plugin-debug-session-factory.d.ts +7 -4
  46. package/lib/main/browser/debug/plugin-debug-session-factory.d.ts.map +1 -1
  47. package/lib/main/browser/debug/plugin-debug-session-factory.js +6 -5
  48. package/lib/main/browser/debug/plugin-debug-session-factory.js.map +1 -1
  49. package/lib/main/browser/languages-main.d.ts +4 -2
  50. package/lib/main/browser/languages-main.d.ts.map +1 -1
  51. package/lib/main/browser/notebooks/notebooks-main.d.ts +4 -2
  52. package/lib/main/browser/notebooks/notebooks-main.d.ts.map +1 -1
  53. package/lib/main/browser/plugin-ext-frontend-module.d.ts.map +1 -1
  54. package/lib/main/browser/plugin-ext-frontend-module.js +3 -3
  55. package/lib/main/browser/plugin-ext-frontend-module.js.map +1 -1
  56. package/lib/main/browser/quick-open-main.d.ts +7 -3
  57. package/lib/main/browser/quick-open-main.d.ts.map +1 -1
  58. package/lib/main/browser/quick-open-main.js +21 -38
  59. package/lib/main/browser/quick-open-main.js.map +1 -1
  60. package/lib/main/browser/terminal-main.d.ts +9 -4
  61. package/lib/main/browser/terminal-main.d.ts.map +1 -1
  62. package/lib/main/browser/terminal-main.js +21 -2
  63. package/lib/main/browser/terminal-main.js.map +1 -1
  64. package/lib/main/browser/view/tree-view-decorator-service.d.ts +4 -2
  65. package/lib/main/browser/view/tree-view-decorator-service.d.ts.map +1 -1
  66. package/lib/main/browser/view/tree-view-widget.d.ts +4 -2
  67. package/lib/main/browser/view/tree-view-widget.d.ts.map +1 -1
  68. package/lib/main/browser/view/tree-views-main.d.ts +4 -2
  69. package/lib/main/browser/view/tree-views-main.d.ts.map +1 -1
  70. package/lib/main/browser/webview/webview.d.ts +4 -2
  71. package/lib/main/browser/webview/webview.d.ts.map +1 -1
  72. package/lib/main/browser/webview-views/webview-views-main.d.ts +4 -2
  73. package/lib/main/browser/webview-views/webview-views-main.d.ts.map +1 -1
  74. package/lib/main/browser/webviews-main.d.ts +4 -2
  75. package/lib/main/browser/webviews-main.d.ts.map +1 -1
  76. package/lib/main/browser/workspace-main.d.ts +4 -2
  77. package/lib/main/browser/workspace-main.d.ts.map +1 -1
  78. package/lib/plugin/authentication-ext.d.ts +4 -2
  79. package/lib/plugin/authentication-ext.d.ts.map +1 -1
  80. package/lib/plugin/clipboard-ext.d.ts +4 -2
  81. package/lib/plugin/clipboard-ext.d.ts.map +1 -1
  82. package/lib/plugin/command-registry.d.ts +4 -2
  83. package/lib/plugin/command-registry.d.ts.map +1 -1
  84. package/lib/plugin/comments.d.ts +4 -2
  85. package/lib/plugin/comments.d.ts.map +1 -1
  86. package/lib/plugin/custom-editors.d.ts +4 -2
  87. package/lib/plugin/custom-editors.d.ts.map +1 -1
  88. package/lib/plugin/debug/debug-ext.d.ts +12 -3
  89. package/lib/plugin/debug/debug-ext.d.ts.map +1 -1
  90. package/lib/plugin/debug/debug-ext.js +46 -3
  91. package/lib/plugin/debug/debug-ext.js.map +1 -1
  92. package/lib/plugin/debug/plugin-debug-adapter-creator.d.ts +4 -2
  93. package/lib/plugin/debug/plugin-debug-adapter-creator.d.ts.map +1 -1
  94. package/lib/plugin/debug/plugin-debug-adapter-session.d.ts +4 -2
  95. package/lib/plugin/debug/plugin-debug-adapter-session.d.ts.map +1 -1
  96. package/lib/plugin/debug/plugin-debug-adapter-tracker.d.ts +4 -2
  97. package/lib/plugin/debug/plugin-debug-adapter-tracker.d.ts.map +1 -1
  98. package/lib/plugin/decorations.d.ts +4 -2
  99. package/lib/plugin/decorations.d.ts.map +1 -1
  100. package/lib/plugin/dialogs.d.ts +4 -2
  101. package/lib/plugin/dialogs.d.ts.map +1 -1
  102. package/lib/plugin/document-data.d.ts +4 -2
  103. package/lib/plugin/document-data.d.ts.map +1 -1
  104. package/lib/plugin/documents.d.ts +4 -2
  105. package/lib/plugin/documents.d.ts.map +1 -1
  106. package/lib/plugin/env.d.ts +4 -2
  107. package/lib/plugin/env.d.ts.map +1 -1
  108. package/lib/plugin/file-system-event-service-ext-impl.d.ts +4 -2
  109. package/lib/plugin/file-system-event-service-ext-impl.d.ts.map +1 -1
  110. package/lib/plugin/file-system-ext-impl.d.ts +4 -2
  111. package/lib/plugin/file-system-ext-impl.d.ts.map +1 -1
  112. package/lib/plugin/label-service.d.ts +4 -2
  113. package/lib/plugin/label-service.d.ts.map +1 -1
  114. package/lib/plugin/languages/call-hierarchy.d.ts +4 -2
  115. package/lib/plugin/languages/call-hierarchy.d.ts.map +1 -1
  116. package/lib/plugin/languages/code-action.d.ts +4 -2
  117. package/lib/plugin/languages/code-action.d.ts.map +1 -1
  118. package/lib/plugin/languages/color.d.ts +4 -2
  119. package/lib/plugin/languages/color.d.ts.map +1 -1
  120. package/lib/plugin/languages/completion.d.ts +4 -2
  121. package/lib/plugin/languages/completion.d.ts.map +1 -1
  122. package/lib/plugin/languages/declaration.d.ts +4 -2
  123. package/lib/plugin/languages/declaration.d.ts.map +1 -1
  124. package/lib/plugin/languages/definition.d.ts +4 -2
  125. package/lib/plugin/languages/definition.d.ts.map +1 -1
  126. package/lib/plugin/languages/diagnostics.d.ts +4 -2
  127. package/lib/plugin/languages/diagnostics.d.ts.map +1 -1
  128. package/lib/plugin/languages/document-drop-edit.d.ts +4 -2
  129. package/lib/plugin/languages/document-drop-edit.d.ts.map +1 -1
  130. package/lib/plugin/languages/document-formatting.d.ts +4 -2
  131. package/lib/plugin/languages/document-formatting.d.ts.map +1 -1
  132. package/lib/plugin/languages/document-highlight.d.ts +4 -2
  133. package/lib/plugin/languages/document-highlight.d.ts.map +1 -1
  134. package/lib/plugin/languages/evaluatable-expression.d.ts +4 -2
  135. package/lib/plugin/languages/evaluatable-expression.d.ts.map +1 -1
  136. package/lib/plugin/languages/folding.d.ts +4 -2
  137. package/lib/plugin/languages/folding.d.ts.map +1 -1
  138. package/lib/plugin/languages/hover.d.ts +4 -2
  139. package/lib/plugin/languages/hover.d.ts.map +1 -1
  140. package/lib/plugin/languages/implementation.d.ts +4 -2
  141. package/lib/plugin/languages/implementation.d.ts.map +1 -1
  142. package/lib/plugin/languages/inlay-hints.d.ts +4 -2
  143. package/lib/plugin/languages/inlay-hints.d.ts.map +1 -1
  144. package/lib/plugin/languages/inline-completion.d.ts +4 -2
  145. package/lib/plugin/languages/inline-completion.d.ts.map +1 -1
  146. package/lib/plugin/languages/inline-values.d.ts +4 -2
  147. package/lib/plugin/languages/inline-values.d.ts.map +1 -1
  148. package/lib/plugin/languages/lens.d.ts +4 -2
  149. package/lib/plugin/languages/lens.d.ts.map +1 -1
  150. package/lib/plugin/languages/link-provider.d.ts +4 -2
  151. package/lib/plugin/languages/link-provider.d.ts.map +1 -1
  152. package/lib/plugin/languages/linked-editing-range.d.ts +4 -2
  153. package/lib/plugin/languages/linked-editing-range.d.ts.map +1 -1
  154. package/lib/plugin/languages/on-type-formatting.d.ts +4 -2
  155. package/lib/plugin/languages/on-type-formatting.d.ts.map +1 -1
  156. package/lib/plugin/languages/outline.d.ts +4 -2
  157. package/lib/plugin/languages/outline.d.ts.map +1 -1
  158. package/lib/plugin/languages/range-formatting.d.ts +4 -2
  159. package/lib/plugin/languages/range-formatting.d.ts.map +1 -1
  160. package/lib/plugin/languages/reference.d.ts +4 -2
  161. package/lib/plugin/languages/reference.d.ts.map +1 -1
  162. package/lib/plugin/languages/rename.d.ts +4 -2
  163. package/lib/plugin/languages/rename.d.ts.map +1 -1
  164. package/lib/plugin/languages/selection-range.d.ts +4 -2
  165. package/lib/plugin/languages/selection-range.d.ts.map +1 -1
  166. package/lib/plugin/languages/semantic-highlighting.d.ts +4 -2
  167. package/lib/plugin/languages/semantic-highlighting.d.ts.map +1 -1
  168. package/lib/plugin/languages/signature.d.ts +4 -2
  169. package/lib/plugin/languages/signature.d.ts.map +1 -1
  170. package/lib/plugin/languages/type-definition.d.ts +4 -2
  171. package/lib/plugin/languages/type-definition.d.ts.map +1 -1
  172. package/lib/plugin/languages/type-hierarchy.d.ts +4 -2
  173. package/lib/plugin/languages/type-hierarchy.d.ts.map +1 -1
  174. package/lib/plugin/languages/util.d.ts +4 -2
  175. package/lib/plugin/languages/util.d.ts.map +1 -1
  176. package/lib/plugin/languages/workspace-symbol.d.ts +4 -2
  177. package/lib/plugin/languages/workspace-symbol.d.ts.map +1 -1
  178. package/lib/plugin/languages-utils.d.ts +4 -2
  179. package/lib/plugin/languages-utils.d.ts.map +1 -1
  180. package/lib/plugin/languages.d.ts +4 -2
  181. package/lib/plugin/languages.d.ts.map +1 -1
  182. package/lib/plugin/markdown-string.d.ts +4 -2
  183. package/lib/plugin/markdown-string.d.ts.map +1 -1
  184. package/lib/plugin/message-registry.d.ts +4 -2
  185. package/lib/plugin/message-registry.d.ts.map +1 -1
  186. package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.d.ts +4 -2
  187. package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.d.ts.map +1 -1
  188. package/lib/plugin/notebook/notebook-document.d.ts +4 -2
  189. package/lib/plugin/notebook/notebook-document.d.ts.map +1 -1
  190. package/lib/plugin/notebook/notebook-documents.d.ts +4 -2
  191. package/lib/plugin/notebook/notebook-documents.d.ts.map +1 -1
  192. package/lib/plugin/notebook/notebook-editor.d.ts +4 -2
  193. package/lib/plugin/notebook/notebook-editor.d.ts.map +1 -1
  194. package/lib/plugin/notebook/notebook-editors.d.ts +4 -2
  195. package/lib/plugin/notebook/notebook-editors.d.ts.map +1 -1
  196. package/lib/plugin/notebook/notebook-kernels.d.ts +4 -2
  197. package/lib/plugin/notebook/notebook-kernels.d.ts.map +1 -1
  198. package/lib/plugin/notebook/notebook-renderers.d.ts +4 -2
  199. package/lib/plugin/notebook/notebook-renderers.d.ts.map +1 -1
  200. package/lib/plugin/notebook/notebooks.d.ts +4 -2
  201. package/lib/plugin/notebook/notebooks.d.ts.map +1 -1
  202. package/lib/plugin/notification.d.ts +4 -2
  203. package/lib/plugin/notification.d.ts.map +1 -1
  204. package/lib/plugin/output-channel/log-output-channel.d.ts +4 -2
  205. package/lib/plugin/output-channel/log-output-channel.d.ts.map +1 -1
  206. package/lib/plugin/output-channel/output-channel-item.d.ts +4 -2
  207. package/lib/plugin/output-channel/output-channel-item.d.ts.map +1 -1
  208. package/lib/plugin/output-channel-registry.d.ts +4 -2
  209. package/lib/plugin/output-channel-registry.d.ts.map +1 -1
  210. package/lib/plugin/plugin-context.d.ts +4 -2
  211. package/lib/plugin/plugin-context.d.ts.map +1 -1
  212. package/lib/plugin/plugin-context.js +20 -9
  213. package/lib/plugin/plugin-context.js.map +1 -1
  214. package/lib/plugin/plugin-icon-path.d.ts +2 -1
  215. package/lib/plugin/plugin-icon-path.d.ts.map +1 -1
  216. package/lib/plugin/plugin-icon-path.js +5 -1
  217. package/lib/plugin/plugin-icon-path.js.map +1 -1
  218. package/lib/plugin/plugin-manager.d.ts +4 -2
  219. package/lib/plugin/plugin-manager.d.ts.map +1 -1
  220. package/lib/plugin/plugin-storage.d.ts +4 -2
  221. package/lib/plugin/plugin-storage.d.ts.map +1 -1
  222. package/lib/plugin/preference-registry.d.ts +4 -2
  223. package/lib/plugin/preference-registry.d.ts.map +1 -1
  224. package/lib/plugin/quick-open.d.ts +7 -19
  225. package/lib/plugin/quick-open.d.ts.map +1 -1
  226. package/lib/plugin/quick-open.js +22 -39
  227. package/lib/plugin/quick-open.js.map +1 -1
  228. package/lib/plugin/scm.d.ts +4 -2
  229. package/lib/plugin/scm.d.ts.map +1 -1
  230. package/lib/plugin/secrets-ext.d.ts +4 -2
  231. package/lib/plugin/secrets-ext.d.ts.map +1 -1
  232. package/lib/plugin/status-bar/status-bar-item.d.ts +4 -2
  233. package/lib/plugin/status-bar/status-bar-item.d.ts.map +1 -1
  234. package/lib/plugin/status-bar-message-registry.d.ts +4 -2
  235. package/lib/plugin/status-bar-message-registry.d.ts.map +1 -1
  236. package/lib/plugin/tabs.d.ts +4 -2
  237. package/lib/plugin/tabs.d.ts.map +1 -1
  238. package/lib/plugin/tasks/task-provider.d.ts +4 -2
  239. package/lib/plugin/tasks/task-provider.d.ts.map +1 -1
  240. package/lib/plugin/tasks/tasks.d.ts +4 -2
  241. package/lib/plugin/tasks/tasks.d.ts.map +1 -1
  242. package/lib/plugin/terminal-ext.d.ts +13 -16
  243. package/lib/plugin/terminal-ext.d.ts.map +1 -1
  244. package/lib/plugin/terminal-ext.js +14 -21
  245. package/lib/plugin/terminal-ext.js.map +1 -1
  246. package/lib/plugin/test-item.d.ts +4 -2
  247. package/lib/plugin/test-item.d.ts.map +1 -1
  248. package/lib/plugin/tests.d.ts +9 -6
  249. package/lib/plugin/tests.d.ts.map +1 -1
  250. package/lib/plugin/tests.js +22 -16
  251. package/lib/plugin/tests.js.map +1 -1
  252. package/lib/plugin/text-editor.d.ts +4 -2
  253. package/lib/plugin/text-editor.d.ts.map +1 -1
  254. package/lib/plugin/text-editors.d.ts +4 -2
  255. package/lib/plugin/text-editors.d.ts.map +1 -1
  256. package/lib/plugin/timeline.d.ts +4 -2
  257. package/lib/plugin/timeline.d.ts.map +1 -1
  258. package/lib/plugin/tree/tree-views.d.ts +4 -2
  259. package/lib/plugin/tree/tree-views.d.ts.map +1 -1
  260. package/lib/plugin/tree/tree-views.js.map +1 -1
  261. package/lib/plugin/type-converters.d.ts +7 -6
  262. package/lib/plugin/type-converters.d.ts.map +1 -1
  263. package/lib/plugin/type-converters.js +9 -7
  264. package/lib/plugin/type-converters.js.map +1 -1
  265. package/lib/plugin/types-impl.d.ts +31 -6
  266. package/lib/plugin/types-impl.d.ts.map +1 -1
  267. package/lib/plugin/types-impl.js +29 -1
  268. package/lib/plugin/types-impl.js.map +1 -1
  269. package/lib/plugin/webview-views.d.ts +4 -2
  270. package/lib/plugin/webview-views.d.ts.map +1 -1
  271. package/lib/plugin/webviews.d.ts +4 -2
  272. package/lib/plugin/webviews.d.ts.map +1 -1
  273. package/lib/plugin/window-state.d.ts +4 -2
  274. package/lib/plugin/window-state.d.ts.map +1 -1
  275. package/lib/plugin/workspace.d.ts +4 -2
  276. package/lib/plugin/workspace.d.ts.map +1 -1
  277. package/package.json +29 -29
  278. package/src/common/plugin-api-rpc-model.ts +10 -0
  279. package/src/common/plugin-api-rpc.ts +17 -11
  280. package/src/hosted/browser/worker/worker-main.ts +2 -2
  281. package/src/hosted/node/hosted-plugin-process.ts +2 -2
  282. package/src/hosted/node/hosted-plugin.ts +2 -2
  283. package/src/hosted/node/plugin-service.ts +6 -1
  284. package/src/hosted/node/scanners/scanner-theia.ts +1 -0
  285. package/src/main/browser/custom-editors/custom-editor-undo-redo-handler.ts +41 -0
  286. package/src/main/browser/custom-editors/custom-editor-widget.ts +2 -6
  287. package/src/main/browser/custom-editors/custom-editors-main.ts +13 -2
  288. package/src/main/browser/debug/debug-main.ts +26 -2
  289. package/src/main/browser/debug/plugin-debug-session-factory.ts +13 -3
  290. package/src/main/browser/plugin-ext-frontend-module.ts +5 -5
  291. package/src/main/browser/quick-open-main.ts +23 -45
  292. package/src/main/browser/terminal-main.ts +26 -6
  293. package/src/plugin/debug/debug-ext.ts +56 -6
  294. package/src/plugin/plugin-context.ts +26 -12
  295. package/src/plugin/plugin-icon-path.ts +5 -2
  296. package/src/plugin/quick-open.ts +9 -32
  297. package/src/plugin/terminal-ext.ts +27 -33
  298. package/src/plugin/tests.ts +27 -22
  299. package/src/plugin/tree/tree-views.ts +1 -1
  300. package/src/plugin/type-converters.ts +8 -8
  301. package/src/plugin/types-impl.ts +38 -6
  302. package/lib/main/browser/custom-editors/custom-editor-contribution.d.ts +0 -7
  303. package/lib/main/browser/custom-editors/custom-editor-contribution.d.ts.map +0 -1
  304. package/lib/main/browser/custom-editors/custom-editor-contribution.js.map +0 -1
  305. package/src/main/browser/custom-editors/custom-editor-contribution.ts +0 -38
package/package.json CHANGED
@@ -1,37 +1,37 @@
1
1
  {
2
2
  "name": "@theia/plugin-ext",
3
- "version": "1.51.0",
3
+ "version": "1.53.0-next.4+9e9124118",
4
4
  "description": "Theia - Plugin Extension",
5
5
  "main": "lib/common/index.js",
6
6
  "typings": "lib/common/index.d.ts",
7
7
  "dependencies": {
8
- "@theia/bulk-edit": "1.51.0",
9
- "@theia/callhierarchy": "1.51.0",
10
- "@theia/console": "1.51.0",
11
- "@theia/core": "1.51.0",
12
- "@theia/debug": "1.51.0",
13
- "@theia/editor": "1.51.0",
14
- "@theia/editor-preview": "1.51.0",
15
- "@theia/file-search": "1.51.0",
16
- "@theia/filesystem": "1.51.0",
17
- "@theia/markers": "1.51.0",
18
- "@theia/messages": "1.51.0",
19
- "@theia/monaco": "1.51.0",
8
+ "@theia/bulk-edit": "1.53.0-next.4+9e9124118",
9
+ "@theia/callhierarchy": "1.53.0-next.4+9e9124118",
10
+ "@theia/console": "1.53.0-next.4+9e9124118",
11
+ "@theia/core": "1.53.0-next.4+9e9124118",
12
+ "@theia/debug": "1.53.0-next.4+9e9124118",
13
+ "@theia/editor": "1.53.0-next.4+9e9124118",
14
+ "@theia/editor-preview": "1.53.0-next.4+9e9124118",
15
+ "@theia/file-search": "1.53.0-next.4+9e9124118",
16
+ "@theia/filesystem": "1.53.0-next.4+9e9124118",
17
+ "@theia/markers": "1.53.0-next.4+9e9124118",
18
+ "@theia/messages": "1.53.0-next.4+9e9124118",
19
+ "@theia/monaco": "1.53.0-next.4+9e9124118",
20
20
  "@theia/monaco-editor-core": "1.83.101",
21
- "@theia/navigator": "1.51.0",
22
- "@theia/notebook": "1.51.0",
23
- "@theia/output": "1.51.0",
24
- "@theia/plugin": "1.51.0",
25
- "@theia/preferences": "1.51.0",
26
- "@theia/scm": "1.51.0",
27
- "@theia/search-in-workspace": "1.51.0",
28
- "@theia/task": "1.51.0",
29
- "@theia/terminal": "1.51.0",
30
- "@theia/test": "1.51.0",
31
- "@theia/timeline": "1.51.0",
32
- "@theia/typehierarchy": "1.51.0",
33
- "@theia/variable-resolver": "1.51.0",
34
- "@theia/workspace": "1.51.0",
21
+ "@theia/navigator": "1.53.0-next.4+9e9124118",
22
+ "@theia/notebook": "1.53.0-next.4+9e9124118",
23
+ "@theia/output": "1.53.0-next.4+9e9124118",
24
+ "@theia/plugin": "1.53.0-next.4+9e9124118",
25
+ "@theia/preferences": "1.53.0-next.4+9e9124118",
26
+ "@theia/scm": "1.53.0-next.4+9e9124118",
27
+ "@theia/search-in-workspace": "1.53.0-next.4+9e9124118",
28
+ "@theia/task": "1.53.0-next.4+9e9124118",
29
+ "@theia/terminal": "1.53.0-next.4+9e9124118",
30
+ "@theia/test": "1.53.0-next.4+9e9124118",
31
+ "@theia/timeline": "1.53.0-next.4+9e9124118",
32
+ "@theia/typehierarchy": "1.53.0-next.4+9e9124118",
33
+ "@theia/variable-resolver": "1.53.0-next.4+9e9124118",
34
+ "@theia/workspace": "1.53.0-next.4+9e9124118",
35
35
  "@types/mime": "^2.0.1",
36
36
  "@vscode/debugprotocol": "^1.51.0",
37
37
  "@vscode/proxy-agent": "^0.13.2",
@@ -88,7 +88,7 @@
88
88
  "watch": "theiaext watch"
89
89
  },
90
90
  "devDependencies": {
91
- "@theia/ext-scripts": "1.51.0",
91
+ "@theia/ext-scripts": "1.52.0",
92
92
  "@types/decompress": "^4.2.2",
93
93
  "@types/escape-html": "^0.0.20",
94
94
  "@types/lodash.clonedeep": "^4.5.3",
@@ -97,5 +97,5 @@
97
97
  "nyc": {
98
98
  "extends": "../../configs/nyc.json"
99
99
  },
100
- "gitHead": "fe70ec5d445d733038564d81357c78aedf5c7e0e"
100
+ "gitHead": "9e912411843f32b2a549ef6580b07872edd95e8b"
101
101
  }
@@ -895,3 +895,13 @@ export interface InlineCompletionsProvider<T extends InlineCompletions = InlineC
895
895
  freeInlineCompletions(completions: T): void;
896
896
  }
897
897
 
898
+ export interface DebugStackFrameDTO {
899
+ readonly sessionId: string,
900
+ readonly frameId: number,
901
+ readonly threadId: number
902
+ }
903
+
904
+ export interface DebugThreadDTO {
905
+ readonly sessionId: string,
906
+ readonly threadId: number
907
+ }
@@ -89,7 +89,9 @@ import {
89
89
  InlineCompletionContext,
90
90
  DocumentDropEdit,
91
91
  DataTransferDTO,
92
- DocumentDropEditProviderMetadata
92
+ DocumentDropEditProviderMetadata,
93
+ DebugStackFrameDTO,
94
+ DebugThreadDTO
93
95
  } from './plugin-api-rpc-model';
94
96
  import { ExtPluginApi } from './plugin-ext-api-contribution';
95
97
  import { KeysToAnyValues, KeysToKeysToAnyValue } from './types';
@@ -339,7 +341,7 @@ export interface TerminalServiceMain {
339
341
  * Create new Terminal with Terminal options.
340
342
  * @param options - object with parameters to create new terminal.
341
343
  */
342
- $createTerminal(id: string, options: theia.TerminalOptions, parentId?: string, isPseudoTerminal?: boolean): Promise<string>;
344
+ $createTerminal(id: string, options: TerminalOptions, parentId?: string, isPseudoTerminal?: boolean): Promise<string>;
343
345
 
344
346
  /**
345
347
  * Send text to the terminal by id.
@@ -469,6 +471,10 @@ export interface TerminalServiceMain {
469
471
  $unregisterTerminalObserver(id: string): unknown;
470
472
  }
471
473
 
474
+ export interface TerminalOptions extends theia.TerminalOptions {
475
+ iconUrl?: string | { light: string; dark: string } | ThemeIcon;
476
+ }
477
+
472
478
  export interface AutoFocus {
473
479
  autoFocusFirstEntry?: boolean;
474
480
  // TODO
@@ -524,10 +530,10 @@ export interface QuickOpenExt {
524
530
  $onDidChangeSelection(sessionId: number, handles: number[]): void;
525
531
 
526
532
  /* eslint-disable max-len */
527
- showQuickPick(itemsOrItemsPromise: Array<theia.QuickPickItem> | Promise<Array<theia.QuickPickItem>>, options: theia.QuickPickOptions & { canPickMany: true; },
533
+ showQuickPick(plugin: Plugin, itemsOrItemsPromise: Array<theia.QuickPickItem> | Promise<Array<theia.QuickPickItem>>, options: theia.QuickPickOptions & { canPickMany: true; },
528
534
  token?: theia.CancellationToken): Promise<Array<theia.QuickPickItem> | undefined>;
529
- showQuickPick(itemsOrItemsPromise: string[] | Promise<string[]>, options?: theia.QuickPickOptions, token?: theia.CancellationToken): Promise<string | undefined>;
530
- showQuickPick(itemsOrItemsPromise: Array<theia.QuickPickItem> | Promise<Array<theia.QuickPickItem>>, options?: theia.QuickPickOptions, token?: theia.CancellationToken): Promise<theia.QuickPickItem | undefined>;
535
+ showQuickPick(plugin: Plugin, itemsOrItemsPromise: string[] | Promise<string[]>, options?: theia.QuickPickOptions, token?: theia.CancellationToken): Promise<string | undefined>;
536
+ showQuickPick(plugin: Plugin, itemsOrItemsPromise: Array<theia.QuickPickItem> | Promise<Array<theia.QuickPickItem>>, options?: theia.QuickPickOptions, token?: theia.CancellationToken): Promise<theia.QuickPickItem | undefined>;
531
537
 
532
538
  showInput(options?: theia.InputBoxOptions, token?: theia.CancellationToken): PromiseLike<string | undefined>;
533
539
  // showWorkspaceFolderPick(options?: theia.WorkspaceFolderPickOptions, token?: theia.CancellationToken): Promise<theia.WorkspaceFolder | undefined>
@@ -651,7 +657,7 @@ export interface TransferQuickPickItem {
651
657
  handle: number;
652
658
  kind: 'item' | 'separator',
653
659
  label: string;
654
- iconPath?: UriComponents | { light: UriComponents; dark: UriComponents } | ThemeIcon;
660
+ iconUrl?: string | { light: string; dark: string } | ThemeIcon;
655
661
  description?: string;
656
662
  detail?: string;
657
663
  picked?: boolean;
@@ -675,7 +681,7 @@ export interface TransferQuickPickOptions<T extends TransferQuickPickItem> {
675
681
 
676
682
  export interface TransferQuickInputButton {
677
683
  handle?: number;
678
- readonly iconPath: UriComponents | { light: UriComponents; dark: UriComponents } | ThemeIcon;
684
+ readonly iconUrl?: string | { light: string; dark: string } | ThemeIcon;
679
685
  readonly tooltip?: string | undefined;
680
686
  }
681
687
 
@@ -1514,12 +1520,10 @@ export interface WorkspaceEditEntryMetadataDto {
1514
1520
  needsConfirmation: boolean;
1515
1521
  label: string;
1516
1522
  description?: string;
1517
- iconPath?: {
1518
- id: string;
1519
- } | {
1523
+ iconPath?: ThemeIcon | {
1520
1524
  light: UriComponents;
1521
1525
  dark: UriComponents;
1522
- } | ThemeIcon;
1526
+ };
1523
1527
  }
1524
1528
 
1525
1529
  export interface WorkspaceFileEditDto {
@@ -1979,6 +1983,8 @@ export interface DebugExt {
1979
1983
  debugConfiguration: DebugConfiguration
1980
1984
  ): Promise<theia.DebugConfiguration | undefined | null>;
1981
1985
 
1986
+ $onDidChangeActiveFrame(frame: DebugStackFrameDTO | undefined): void;
1987
+ $onDidChangeActiveThread(thread: DebugThreadDTO | undefined): void;
1982
1988
  $createDebugSession(debugConfiguration: DebugConfiguration, workspaceFolder: string | undefined): Promise<string>;
1983
1989
  $terminateDebugSession(sessionId: string): Promise<void>;
1984
1990
  $getTerminalCreationOptions(debugType: string): Promise<TerminalOptionsExt | undefined>;
@@ -45,7 +45,7 @@ const pluginsModulesNames = new Map<string, Plugin>();
45
45
  const scripts = new Set<string>();
46
46
 
47
47
  function initialize(contextPath: string, pluginMetadata: PluginMetadata): void {
48
- const path = '/context/' + contextPath;
48
+ const path = './context/' + contextPath;
49
49
 
50
50
  if (!scripts.has(path)) {
51
51
  ctx.importScripts(path);
@@ -70,7 +70,7 @@ pluginManager.setPluginHost({
70
70
  ctx.frontendModuleName = plugin.lifecycle.frontendModuleName;
71
71
  }
72
72
 
73
- ctx.importScripts('/hostedPlugin/' + getPluginId(plugin.model) + '/' + plugin.pluginPath);
73
+ ctx.importScripts('./hostedPlugin/' + getPluginId(plugin.model) + '/' + plugin.pluginPath);
74
74
  }
75
75
  }
76
76
 
@@ -149,13 +149,13 @@ export class HostedPluginProcess implements ServerPluginRunner {
149
149
  }
150
150
  }
151
151
 
152
- public runPluginServer(): void {
152
+ public runPluginServer(serverName?: string): void {
153
153
  if (this.childProcess) {
154
154
  this.terminatePluginServer();
155
155
  }
156
156
  this.terminatingPluginServer = false;
157
157
  this.childProcess = this.fork({
158
- serverName: 'hosted-plugin',
158
+ serverName: serverName ?? 'hosted-plugin',
159
159
  logger: this.logger,
160
160
  args: []
161
161
  });
@@ -85,9 +85,9 @@ export class HostedPluginSupport {
85
85
  }
86
86
  }
87
87
 
88
- runPluginServer(): void {
88
+ runPluginServer(serverName?: string): void {
89
89
  if (!this.isPluginProcessRunning) {
90
- this.hostedPluginProcess.runPluginServer();
90
+ this.hostedPluginProcess.runPluginServer(serverName);
91
91
  this.isPluginProcessRunning = true;
92
92
  }
93
93
  }
@@ -59,6 +59,7 @@ export class HostedPluginServerImpl implements HostedPluginServer {
59
59
  protected toDispose = new DisposableCollection();
60
60
 
61
61
  protected _ignoredPlugins?: Set<PluginIdentifiers.VersionedId>;
62
+
62
63
  // We ignore any plugins that are marked as uninstalled the first time the frontend requests information about deployed plugins.
63
64
  protected get ignoredPlugins(): Set<PluginIdentifiers.VersionedId> {
64
65
  if (!this._ignoredPlugins) {
@@ -96,6 +97,10 @@ export class HostedPluginServerImpl implements HostedPluginServer {
96
97
  ]);
97
98
  }
98
99
 
100
+ protected getServerName(): string {
101
+ return 'hosted-plugin';
102
+ }
103
+
99
104
  dispose(): void {
100
105
  this.toDispose.dispose();
101
106
  }
@@ -109,7 +114,7 @@ export class HostedPluginServerImpl implements HostedPluginServer {
109
114
  const backendPlugins = (await this.deployerHandler.getDeployedBackendPlugins())
110
115
  .filter(this.backendPluginHostableFilter);
111
116
  if (backendPlugins.length > 0) {
112
- this.hostedPlugin.runPluginServer();
117
+ this.hostedPlugin.runPluginServer(this.getServerName());
113
118
  }
114
119
  const plugins = new Set<PluginIdentifiers.VersionedId>();
115
120
  const addIds = async (identifiers: PluginIdentifiers.VersionedId[]): Promise<void> => {
@@ -196,6 +196,7 @@ export class TheiaPluginScanner extends AbstractPluginScanner {
196
196
  for (const c of configurations) {
197
197
  const config = this.readConfiguration(c, rawPlugin.packagePath);
198
198
  if (config) {
199
+ Object.values(config.properties).forEach(property => property.title = config.title);
199
200
  contributions.configuration.push(config);
200
201
  }
201
202
  }
@@ -0,0 +1,41 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2024 TypeFox 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-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { inject, injectable } from '@theia/core/shared/inversify';
18
+ import { ApplicationShell, UndoRedoHandler } from '@theia/core/lib/browser';
19
+ import { CustomEditorWidget } from './custom-editor-widget';
20
+
21
+ @injectable()
22
+ export class CustomEditorUndoRedoHandler implements UndoRedoHandler<CustomEditorWidget> {
23
+
24
+ @inject(ApplicationShell)
25
+ protected readonly applicationShell: ApplicationShell;
26
+
27
+ priority = 190;
28
+ select(): CustomEditorWidget | undefined {
29
+ const current = this.applicationShell.currentWidget;
30
+ if (current instanceof CustomEditorWidget) {
31
+ return current;
32
+ }
33
+ return undefined;
34
+ }
35
+ undo(item: CustomEditorWidget): void {
36
+ item.undo();
37
+ }
38
+ redo(item: CustomEditorWidget): void {
39
+ item.redo();
40
+ }
41
+ }
@@ -21,7 +21,6 @@ import { ApplicationShell, NavigatableWidget, Saveable, SaveableSource, SaveOpti
21
21
  import { SaveableService } from '@theia/core/lib/browser/saveable-service';
22
22
  import { Reference } from '@theia/core/lib/common/reference';
23
23
  import { WebviewWidget } from '../webview/webview';
24
- import { UndoRedoService } from '@theia/editor/lib/browser/undo-redo-service';
25
24
  import { CustomEditorModel } from './custom-editors-main';
26
25
 
27
26
  @injectable()
@@ -43,9 +42,6 @@ export class CustomEditorWidget extends WebviewWidget implements SaveableSource,
43
42
  return this._modelRef.object;
44
43
  }
45
44
 
46
- @inject(UndoRedoService)
47
- protected readonly undoRedoService: UndoRedoService;
48
-
49
45
  @inject(ApplicationShell)
50
46
  protected readonly shell: ApplicationShell;
51
47
 
@@ -64,11 +60,11 @@ export class CustomEditorWidget extends WebviewWidget implements SaveableSource,
64
60
  }
65
61
 
66
62
  undo(): void {
67
- this.undoRedoService.undo(this.resource);
63
+ this._modelRef.object.undo();
68
64
  }
69
65
 
70
66
  redo(): void {
71
- this.undoRedoService.redo(this.resource);
67
+ this._modelRef.object.redo();
72
68
  }
73
69
 
74
70
  async save(options?: SaveOptions): Promise<void> {
@@ -284,6 +284,9 @@ export interface CustomEditorModel extends Saveable, Disposable {
284
284
  revert(options?: Saveable.RevertOptions): Promise<void>;
285
285
  saveCustomEditor(options?: SaveOptions): Promise<void>;
286
286
  saveCustomEditorAs(resource: TheiaURI, targetResource: TheiaURI, options?: SaveOptions): Promise<void>;
287
+
288
+ undo(): void;
289
+ redo(): void;
287
290
  }
288
291
 
289
292
  export class MainCustomEditorModel implements CustomEditorModel {
@@ -436,7 +439,7 @@ export class MainCustomEditorModel implements CustomEditorModel {
436
439
  }
437
440
  }
438
441
 
439
- private async undo(): Promise<void> {
442
+ async undo(): Promise<void> {
440
443
  if (!this.editable) {
441
444
  return;
442
445
  }
@@ -453,7 +456,7 @@ export class MainCustomEditorModel implements CustomEditorModel {
453
456
  await this.proxy.$undo(this.resource, this.viewType, undoneEdit, this.dirty);
454
457
  }
455
458
 
456
- private async redo(): Promise<void> {
459
+ async redo(): Promise<void> {
457
460
  if (!this.editable) {
458
461
  return;
459
462
  }
@@ -571,4 +574,12 @@ export class CustomTextEditorModel implements CustomEditorModel {
571
574
  await this.saveCustomEditor(options);
572
575
  await this.fileService.copy(resource, targetResource, { overwrite: false });
573
576
  }
577
+
578
+ undo(): void {
579
+ this.editorTextModel.undo();
580
+ }
581
+
582
+ redo(): void {
583
+ this.editorTextModel.redo();
584
+ }
574
585
  }
@@ -25,7 +25,7 @@ import {
25
25
  MAIN_RPC_CONTEXT
26
26
  } from '../../../common/plugin-api-rpc';
27
27
  import { DebugSessionManager } from '@theia/debug/lib/browser/debug-session-manager';
28
- import { Breakpoint, WorkspaceFolder } from '../../../common/plugin-api-rpc-model';
28
+ import { Breakpoint, DebugStackFrameDTO, DebugThreadDTO, WorkspaceFolder } from '../../../common/plugin-api-rpc-model';
29
29
  import { LabelProvider } from '@theia/core/lib/browser';
30
30
  import { EditorManager } from '@theia/editor/lib/browser';
31
31
  import { BreakpointManager, BreakpointsChangeEvent } from '@theia/debug/lib/browser/breakpoint/breakpoint-manager';
@@ -56,6 +56,9 @@ import { DebugContribution } from '@theia/debug/lib/browser/debug-contribution';
56
56
  import { ConnectionImpl } from '../../../common/connection';
57
57
  import { WorkspaceService } from '@theia/workspace/lib/browser';
58
58
  import { DebugSessionOptions as TheiaDebugSessionOptions } from '@theia/debug/lib/browser/debug-session-options';
59
+ import { DebugStackFrame } from '@theia/debug/lib/browser/model/debug-stack-frame';
60
+ import { DebugThread } from '@theia/debug/lib/browser/model/debug-thread';
61
+ import { TestService } from '@theia/test/lib/browser/test-service';
59
62
 
60
63
  export class DebugMainImpl implements DebugMain, Disposable {
61
64
  private readonly debugExt: DebugExt;
@@ -75,6 +78,7 @@ export class DebugMainImpl implements DebugMain, Disposable {
75
78
  private readonly fileService: FileService;
76
79
  private readonly pluginService: HostedPluginSupport;
77
80
  private readonly debugContributionProvider: ContributionProvider<DebugContribution>;
81
+ private readonly testService: TestService;
78
82
  private readonly workspaceService: WorkspaceService;
79
83
 
80
84
  private readonly debuggerContributions = new Map<string, DisposableCollection>();
@@ -98,6 +102,7 @@ export class DebugMainImpl implements DebugMain, Disposable {
98
102
  this.debugContributionProvider = container.getNamed(ContributionProvider, DebugContribution);
99
103
  this.fileService = container.get(FileService);
100
104
  this.pluginService = container.get(HostedPluginSupport);
105
+ this.testService = container.get(TestService);
101
106
  this.workspaceService = container.get(WorkspaceService);
102
107
 
103
108
  const fireDidChangeBreakpoints = ({ added, removed, changed }: BreakpointsChangeEvent<SourceBreakpoint | FunctionBreakpoint>) => {
@@ -117,7 +122,9 @@ export class DebugMainImpl implements DebugMain, Disposable {
117
122
  this.sessionManager.onDidStartDebugSession(debugSession => this.debugExt.$sessionDidStart(debugSession.id)),
118
123
  this.sessionManager.onDidDestroyDebugSession(debugSession => this.debugExt.$sessionDidDestroy(debugSession.id)),
119
124
  this.sessionManager.onDidChangeActiveDebugSession(event => this.debugExt.$sessionDidChange(event.current && event.current.id)),
120
- this.sessionManager.onDidReceiveDebugSessionCustomEvent(event => this.debugExt.$onSessionCustomEvent(event.session.id, event.event, event.body))
125
+ this.sessionManager.onDidReceiveDebugSessionCustomEvent(event => this.debugExt.$onSessionCustomEvent(event.session.id, event.event, event.body)),
126
+ this.sessionManager.onDidFocusStackFrame(stackFrame => this.debugExt.$onDidChangeActiveFrame(this.toDebugStackFrameDTO(stackFrame))),
127
+ this.sessionManager.onDidFocusThread(debugThread => this.debugExt.$onDidChangeActiveThread(this.toDebugThreadDTO(debugThread))),
121
128
  ]);
122
129
  }
123
130
 
@@ -161,6 +168,7 @@ export class DebugMainImpl implements DebugMain, Disposable {
161
168
  this.fileService,
162
169
  terminalOptionsExt,
163
170
  this.debugContributionProvider,
171
+ this.testService,
164
172
  this.workspaceService,
165
173
  );
166
174
 
@@ -323,6 +331,7 @@ export class DebugMainImpl implements DebugMain, Disposable {
323
331
  } else {
324
332
  sessionOptions = { ...sessionOptions, ...options, workspaceFolderUri };
325
333
  }
334
+ sessionOptions.testRun = options.testRun;
326
335
 
327
336
  // start options
328
337
  const session = await this.sessionManager.start(sessionOptions);
@@ -340,6 +349,21 @@ export class DebugMainImpl implements DebugMain, Disposable {
340
349
  }
341
350
  }
342
351
 
352
+ private toDebugStackFrameDTO(stackFrame: DebugStackFrame | undefined): DebugStackFrameDTO | undefined {
353
+ return stackFrame ? {
354
+ sessionId: stackFrame.session.id,
355
+ frameId: stackFrame.frameId,
356
+ threadId: stackFrame.thread.threadId
357
+ } : undefined;
358
+ }
359
+
360
+ private toDebugThreadDTO(debugThread: DebugThread | undefined): DebugThreadDTO | undefined {
361
+ return debugThread ? {
362
+ sessionId: debugThread.session.id,
363
+ threadId: debugThread.threadId
364
+ } : undefined;
365
+ }
366
+
343
367
  private toTheiaPluginApiBreakpoints(breakpoints: (SourceBreakpoint | FunctionBreakpoint)[]): Breakpoint[] {
344
368
  return breakpoints.map(b => this.toTheiaPluginApiBreakpoint(b));
345
369
  }
@@ -22,7 +22,7 @@ import { LabelProvider } from '@theia/core/lib/browser/label-provider';
22
22
  import { MessageClient } from '@theia/core/lib/common/message-service-protocol';
23
23
  import { OutputChannelManager } from '@theia/output/lib/browser/output-channel';
24
24
  import { DebugPreferences } from '@theia/debug/lib/browser/debug-preferences';
25
- import { DebugConfigurationSessionOptions } from '@theia/debug/lib/browser/debug-session-options';
25
+ import { DebugConfigurationSessionOptions, TestRunReference } from '@theia/debug/lib/browser/debug-session-options';
26
26
  import { DebugSession } from '@theia/debug/lib/browser/debug-session';
27
27
  import { DebugSessionConnection } from '@theia/debug/lib/browser/debug-session-connection';
28
28
  import { TerminalWidgetOptions, TerminalWidget } from '@theia/terminal/lib/browser/base/terminal-widget';
@@ -32,12 +32,17 @@ import { DebugContribution } from '@theia/debug/lib/browser/debug-contribution';
32
32
  import { ContributionProvider } from '@theia/core/lib/common/contribution-provider';
33
33
  import { WorkspaceService } from '@theia/workspace/lib/browser';
34
34
  import { PluginChannel } from '../../../common/connection';
35
+ import { TestService } from '@theia/test/lib/browser/test-service';
36
+ import { DebugSessionManager } from '@theia/debug/lib/browser/debug-session-manager';
35
37
 
36
38
  export class PluginDebugSession extends DebugSession {
37
39
  constructor(
38
40
  override readonly id: string,
39
41
  override readonly options: DebugConfigurationSessionOptions,
40
42
  override readonly parentSession: DebugSession | undefined,
43
+ testService: TestService,
44
+ testRun: TestRunReference | undefined,
45
+ sessionManager: DebugSessionManager,
41
46
  protected override readonly connection: DebugSessionConnection,
42
47
  protected override readonly terminalServer: TerminalService,
43
48
  protected override readonly editorManager: EditorManager,
@@ -48,7 +53,8 @@ export class PluginDebugSession extends DebugSession {
48
53
  protected readonly terminalOptionsExt: TerminalOptionsExt | undefined,
49
54
  protected override readonly debugContributionProvider: ContributionProvider<DebugContribution>,
50
55
  protected override readonly workspaceService: WorkspaceService) {
51
- super(id, options, parentSession, connection, terminalServer, editorManager, breakpoints, labelProvider, messages, fileService, debugContributionProvider,
56
+ super(id, options, parentSession, testService, testRun, sessionManager, connection, terminalServer, editorManager, breakpoints,
57
+ labelProvider, messages, fileService, debugContributionProvider,
52
58
  workspaceService);
53
59
  }
54
60
 
@@ -75,12 +81,13 @@ export class PluginDebugSessionFactory extends DefaultDebugSessionFactory {
75
81
  protected override readonly fileService: FileService,
76
82
  protected readonly terminalOptionsExt: TerminalOptionsExt | undefined,
77
83
  protected override readonly debugContributionProvider: ContributionProvider<DebugContribution>,
84
+ protected override readonly testService: TestService,
78
85
  protected override readonly workspaceService: WorkspaceService,
79
86
  ) {
80
87
  super();
81
88
  }
82
89
 
83
- override get(sessionId: string, options: DebugConfigurationSessionOptions, parentSession?: DebugSession): DebugSession {
90
+ override get(manager: DebugSessionManager, sessionId: string, options: DebugConfigurationSessionOptions, parentSession?: DebugSession): DebugSession {
84
91
  const connection = new DebugSessionConnection(
85
92
  sessionId,
86
93
  this.connectionFactory,
@@ -90,6 +97,9 @@ export class PluginDebugSessionFactory extends DefaultDebugSessionFactory {
90
97
  sessionId,
91
98
  options,
92
99
  parentSession,
100
+ this.testService,
101
+ options.testRun,
102
+ manager,
93
103
  connection,
94
104
  this.terminalService,
95
105
  this.editorManager,
@@ -21,7 +21,8 @@ import '../../../src/main/browser/style/comments.css';
21
21
  import { ContainerModule } from '@theia/core/shared/inversify';
22
22
  import {
23
23
  FrontendApplicationContribution, WidgetFactory, bindViewContribution,
24
- ViewContainerIdentifier, ViewContainer, createTreeContainer, TreeWidget, LabelProviderContribution
24
+ ViewContainerIdentifier, ViewContainer, createTreeContainer, TreeWidget, LabelProviderContribution,
25
+ UndoRedoHandler
25
26
  } from '@theia/core/lib/browser';
26
27
  import { MaybePromise, CommandContribution, ResourceResolver, bindContributionProvider } from '@theia/core/lib/common';
27
28
  import { WebSocketConnectionProvider } from '@theia/core/lib/browser/messaging';
@@ -66,7 +67,6 @@ import { CommentsService, PluginCommentService } from './comments/comments-servi
66
67
  import { CommentingRangeDecorator } from './comments/comments-decorator';
67
68
  import { CommentsContribution } from './comments/comments-contribution';
68
69
  import { CommentsContextKeyService } from './comments/comments-context-key-service';
69
- import { CustomEditorContribution } from './custom-editors/custom-editor-contribution';
70
70
  import { PluginCustomEditorRegistry } from './custom-editors/plugin-custom-editor-registry';
71
71
  import { CustomEditorWidgetFactory } from '../browser/custom-editors/custom-editor-widget-factory';
72
72
  import { CustomEditorWidget } from './custom-editors/custom-editor-widget';
@@ -90,6 +90,7 @@ import { NotebookCellModel } from '@theia/notebook/lib/browser/view-model/notebo
90
90
  import { NotebookModel } from '@theia/notebook/lib/browser/view-model/notebook-model';
91
91
  import { ArgumentProcessorContribution } from './command-registry-main';
92
92
  import { WebviewSecondaryWindowSupport } from './webview/webview-secondary-window-support';
93
+ import { CustomEditorUndoRedoHandler } from './custom-editors/custom-editor-undo-redo-handler';
93
94
 
94
95
  export default new ContainerModule((bind, unbind, isBound, rebind) => {
95
96
 
@@ -191,14 +192,13 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
191
192
  bind(FrontendApplicationContribution).toService(WebviewSecondaryWindowSupport);
192
193
  bind(FrontendApplicationContribution).toService(WebviewContextKeys);
193
194
 
194
- bind(CustomEditorContribution).toSelf().inSingletonScope();
195
- bind(CommandContribution).toService(CustomEditorContribution);
196
-
197
195
  bind(PluginCustomEditorRegistry).toSelf().inSingletonScope();
198
196
  bind(CustomEditorService).toSelf().inSingletonScope();
199
197
  bind(CustomEditorWidget).toSelf();
200
198
  bind(CustomEditorWidgetFactory).toDynamicValue(ctx => new CustomEditorWidgetFactory(ctx.container)).inSingletonScope();
201
199
  bind(WidgetFactory).toService(CustomEditorWidgetFactory);
200
+ bind(CustomEditorUndoRedoHandler).toSelf().inSingletonScope();
201
+ bind(UndoRedoHandler).toService(CustomEditorUndoRedoHandler);
202
202
 
203
203
  bind(PluginViewWidget).toSelf();
204
204
  bind(WidgetFactory).toDynamicValue(({ container }) => ({