@theia/core 1.43.1 → 1.45.0

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 (320) hide show
  1. package/README.md +6 -6
  2. package/i18n/nls.cs.json +10 -3
  3. package/i18n/nls.de.json +10 -3
  4. package/i18n/nls.es.json +10 -3
  5. package/i18n/nls.fr.json +10 -3
  6. package/i18n/nls.hu.json +10 -3
  7. package/i18n/nls.it.json +10 -3
  8. package/i18n/nls.ja.json +10 -3
  9. package/i18n/nls.json +10 -3
  10. package/i18n/nls.pl.json +10 -3
  11. package/i18n/nls.pt-br.json +10 -3
  12. package/i18n/nls.pt-pt.json +10 -3
  13. package/i18n/nls.ru.json +10 -3
  14. package/i18n/nls.zh-cn.json +10 -3
  15. package/lib/browser/common-frontend-contribution.d.ts +10 -0
  16. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  17. package/lib/browser/common-frontend-contribution.js +68 -10
  18. package/lib/browser/common-frontend-contribution.js.map +1 -1
  19. package/lib/browser/connection-status-service.d.ts +2 -2
  20. package/lib/browser/connection-status-service.d.ts.map +1 -1
  21. package/lib/browser/connection-status-service.js +3 -3
  22. package/lib/browser/connection-status-service.js.map +1 -1
  23. package/lib/browser/connection-status-service.spec.js +6 -6
  24. package/lib/browser/connection-status-service.spec.js.map +1 -1
  25. package/lib/browser/core-preferences.d.ts.map +1 -1
  26. package/lib/browser/core-preferences.js +16 -0
  27. package/lib/browser/core-preferences.js.map +1 -1
  28. package/lib/browser/dialogs.d.ts +0 -1
  29. package/lib/browser/dialogs.d.ts.map +1 -1
  30. package/lib/browser/dialogs.js +1 -34
  31. package/lib/browser/dialogs.js.map +1 -1
  32. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  33. package/lib/browser/frontend-application-module.js +4 -0
  34. package/lib/browser/frontend-application-module.js.map +1 -1
  35. package/lib/browser/icon-theme-contribution.d.ts +1 -0
  36. package/lib/browser/icon-theme-contribution.d.ts.map +1 -1
  37. package/lib/browser/icon-theme-contribution.js +1 -0
  38. package/lib/browser/icon-theme-contribution.js.map +1 -1
  39. package/lib/browser/icon-theme-service.d.ts +1 -0
  40. package/lib/browser/icon-theme-service.d.ts.map +1 -1
  41. package/lib/browser/icon-theme-service.js.map +1 -1
  42. package/lib/browser/language-icon-provider.d.ts +15 -0
  43. package/lib/browser/language-icon-provider.d.ts.map +1 -0
  44. package/lib/browser/language-icon-provider.js +74 -0
  45. package/lib/browser/language-icon-provider.js.map +1 -0
  46. package/lib/browser/language-service.d.ts +22 -0
  47. package/lib/browser/language-service.d.ts.map +1 -1
  48. package/lib/browser/language-service.js +28 -0
  49. package/lib/browser/language-service.js.map +1 -1
  50. package/lib/browser/messaging/connection-source.d.ts +9 -0
  51. package/lib/browser/messaging/connection-source.d.ts.map +1 -0
  52. package/lib/browser/messaging/connection-source.js +20 -0
  53. package/lib/browser/messaging/connection-source.js.map +1 -0
  54. package/lib/browser/messaging/frontend-id-provider.d.ts +13 -0
  55. package/lib/browser/messaging/frontend-id-provider.d.ts.map +1 -0
  56. package/lib/browser/messaging/frontend-id-provider.js +40 -0
  57. package/lib/browser/messaging/frontend-id-provider.js.map +1 -0
  58. package/lib/browser/messaging/messaging-frontend-module.d.ts.map +1 -1
  59. package/lib/browser/messaging/messaging-frontend-module.js +18 -1
  60. package/lib/browser/messaging/messaging-frontend-module.js.map +1 -1
  61. package/lib/browser/messaging/service-connection-provider.d.ts +48 -0
  62. package/lib/browser/messaging/service-connection-provider.d.ts.map +1 -0
  63. package/lib/browser/messaging/service-connection-provider.js +115 -0
  64. package/lib/browser/messaging/service-connection-provider.js.map +1 -0
  65. package/lib/browser/messaging/ws-connection-provider.d.ts +7 -38
  66. package/lib/browser/messaging/ws-connection-provider.d.ts.map +1 -1
  67. package/lib/browser/messaging/ws-connection-provider.js +17 -121
  68. package/lib/browser/messaging/ws-connection-provider.js.map +1 -1
  69. package/lib/browser/messaging/ws-connection-source.d.ts +41 -0
  70. package/lib/browser/messaging/ws-connection-source.d.ts.map +1 -0
  71. package/lib/browser/messaging/ws-connection-source.js +210 -0
  72. package/lib/browser/messaging/ws-connection-source.js.map +1 -0
  73. package/lib/browser/preload/i18n-preload-contribution.js +1 -1
  74. package/lib/browser/preload/i18n-preload-contribution.js.map +1 -1
  75. package/lib/browser/shell/application-shell.js +1 -1
  76. package/lib/browser/shell/application-shell.js.map +1 -1
  77. package/lib/browser/tree/tree-compression/compressed-tree-widget.d.ts +1 -0
  78. package/lib/browser/tree/tree-compression/compressed-tree-widget.d.ts.map +1 -1
  79. package/lib/browser/tree/tree-compression/compressed-tree-widget.js +5 -0
  80. package/lib/browser/tree/tree-compression/compressed-tree-widget.js.map +1 -1
  81. package/lib/browser/tree/tree-widget.d.ts +6 -0
  82. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  83. package/lib/browser/tree/tree-widget.js +21 -11
  84. package/lib/browser/tree/tree-widget.js.map +1 -1
  85. package/lib/browser/user-working-directory-provider.d.ts +8 -1
  86. package/lib/browser/user-working-directory-provider.d.ts.map +1 -1
  87. package/lib/browser/user-working-directory-provider.js +22 -1
  88. package/lib/browser/user-working-directory-provider.js.map +1 -1
  89. package/lib/browser/window/default-secondary-window-service.d.ts +3 -0
  90. package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
  91. package/lib/browser/window/default-secondary-window-service.js +55 -1
  92. package/lib/browser/window/default-secondary-window-service.js.map +1 -1
  93. package/lib/common/contribution-filter/contribution-filter.d.ts +9 -0
  94. package/lib/common/contribution-filter/contribution-filter.d.ts.map +1 -1
  95. package/lib/common/event.js +1 -1
  96. package/lib/common/event.js.map +1 -1
  97. package/lib/common/message-rpc/channel.d.ts.map +1 -1
  98. package/lib/common/message-rpc/channel.js +7 -1
  99. package/lib/common/message-rpc/channel.js.map +1 -1
  100. package/lib/common/message-rpc/message-buffer.d.ts +2 -0
  101. package/lib/common/message-rpc/message-buffer.d.ts.map +1 -1
  102. package/lib/common/message-rpc/message-buffer.js +4 -0
  103. package/lib/common/message-rpc/message-buffer.js.map +1 -1
  104. package/lib/common/message-rpc/uint8-array-message-buffer.d.ts +1 -0
  105. package/lib/common/message-rpc/uint8-array-message-buffer.d.ts.map +1 -1
  106. package/lib/common/message-rpc/uint8-array-message-buffer.js +6 -0
  107. package/lib/common/message-rpc/uint8-array-message-buffer.js.map +1 -1
  108. package/lib/common/messaging/connection-management.d.ts +25 -0
  109. package/lib/common/messaging/connection-management.d.ts.map +1 -0
  110. package/lib/common/messaging/connection-management.js +38 -0
  111. package/lib/common/messaging/connection-management.js.map +1 -0
  112. package/lib/common/messaging/handler.d.ts +1 -0
  113. package/lib/common/messaging/handler.d.ts.map +1 -1
  114. package/lib/common/messaging/handler.js +2 -1
  115. package/lib/common/messaging/handler.js.map +1 -1
  116. package/lib/common/messaging/socket-write-buffer.d.ts +11 -0
  117. package/lib/common/messaging/socket-write-buffer.d.ts.map +1 -0
  118. package/lib/common/messaging/socket-write-buffer.js +50 -0
  119. package/lib/common/messaging/socket-write-buffer.js.map +1 -0
  120. package/lib/common/messaging/web-socket-channel.d.ts +7 -35
  121. package/lib/common/messaging/web-socket-channel.d.ts.map +1 -1
  122. package/lib/common/messaging/web-socket-channel.js +20 -9
  123. package/lib/common/messaging/web-socket-channel.js.map +1 -1
  124. package/lib/common/nls.js +12 -1
  125. package/lib/common/nls.js.map +1 -1
  126. package/lib/electron-browser/messaging/electron-frontend-id-provider.d.ts +5 -0
  127. package/lib/electron-browser/messaging/electron-frontend-id-provider.d.ts.map +1 -0
  128. package/lib/{electron-node/token/electron-token-messaging-contribution.js → electron-browser/messaging/electron-frontend-id-provider.js} +9 -28
  129. package/lib/electron-browser/messaging/electron-frontend-id-provider.js.map +1 -0
  130. package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts +24 -0
  131. package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts.map +1 -0
  132. package/lib/electron-browser/messaging/{electron-ipc-connection-provider.js → electron-ipc-connection-source.js} +19 -19
  133. package/lib/electron-browser/messaging/electron-ipc-connection-source.js.map +1 -0
  134. package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts +7 -0
  135. package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts.map +1 -0
  136. package/lib/electron-browser/messaging/{electron-local-ws-connection-provider.js → electron-local-ws-connection-source.js} +7 -7
  137. package/lib/electron-browser/messaging/electron-local-ws-connection-source.js.map +1 -0
  138. package/lib/electron-browser/messaging/electron-messaging-frontend-module.d.ts.map +1 -1
  139. package/lib/electron-browser/messaging/electron-messaging-frontend-module.js +45 -13
  140. package/lib/electron-browser/messaging/electron-messaging-frontend-module.js.map +1 -1
  141. package/lib/electron-browser/messaging/electron-ws-connection-source.d.ts +12 -0
  142. package/lib/electron-browser/messaging/electron-ws-connection-source.d.ts.map +1 -0
  143. package/lib/electron-browser/messaging/{electron-ws-connection-provider.js → electron-ws-connection-source.js} +14 -21
  144. package/lib/electron-browser/messaging/electron-ws-connection-source.js.map +1 -0
  145. package/lib/electron-browser/preload.d.ts.map +1 -1
  146. package/lib/electron-browser/preload.js +11 -0
  147. package/lib/electron-browser/preload.js.map +1 -1
  148. package/lib/electron-browser/window/electron-secondary-window-service.d.ts +1 -1
  149. package/lib/electron-browser/window/electron-secondary-window-service.d.ts.map +1 -1
  150. package/lib/electron-browser/window/electron-window-module.js +2 -2
  151. package/lib/electron-browser/window/electron-window-module.js.map +1 -1
  152. package/lib/electron-browser/window/electron-window-preferences.js +1 -1
  153. package/lib/electron-browser/window/electron-window-preferences.js.map +1 -1
  154. package/lib/electron-browser/window/electron-window-service.d.ts +4 -0
  155. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  156. package/lib/electron-browser/window/electron-window-service.js +13 -0
  157. package/lib/electron-browser/window/electron-window-service.js.map +1 -1
  158. package/lib/electron-common/electron-api.d.ts +7 -0
  159. package/lib/electron-common/electron-api.d.ts.map +1 -1
  160. package/lib/electron-common/electron-api.js +3 -1
  161. package/lib/electron-common/electron-api.js.map +1 -1
  162. package/lib/electron-main/electron-api-main.d.ts +1 -0
  163. package/lib/electron-main/electron-api-main.d.ts.map +1 -1
  164. package/lib/electron-main/electron-api-main.js +15 -0
  165. package/lib/electron-main/electron-api-main.js.map +1 -1
  166. package/lib/electron-main/electron-main-application-module.js +5 -5
  167. package/lib/electron-main/electron-main-application-module.js.map +1 -1
  168. package/lib/electron-main/electron-main-application.d.ts +9 -13
  169. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  170. package/lib/electron-main/electron-main-application.js +60 -28
  171. package/lib/electron-main/electron-main-application.js.map +1 -1
  172. package/lib/electron-main/messaging/electron-connection-handler.d.ts.map +1 -0
  173. package/lib/electron-main/messaging/electron-connection-handler.js.map +1 -0
  174. package/lib/electron-main/messaging/electron-messaging-contribution.d.ts +13 -22
  175. package/lib/electron-main/messaging/electron-messaging-contribution.d.ts.map +1 -1
  176. package/lib/electron-main/messaging/electron-messaging-contribution.js +39 -39
  177. package/lib/electron-main/messaging/electron-messaging-contribution.js.map +1 -1
  178. package/lib/electron-main/messaging/electron-messaging-service.d.ts.map +1 -1
  179. package/lib/electron-main/messaging/electron-messaging-service.js.map +1 -1
  180. package/lib/electron-main/theia-electron-window.d.ts +2 -2
  181. package/lib/electron-main/theia-electron-window.d.ts.map +1 -1
  182. package/lib/electron-main/theia-electron-window.js +3 -2
  183. package/lib/electron-main/theia-electron-window.js.map +1 -1
  184. package/lib/node/backend-application.d.ts +2 -0
  185. package/lib/node/backend-application.d.ts.map +1 -1
  186. package/lib/node/backend-application.js +11 -9
  187. package/lib/node/backend-application.js.map +1 -1
  188. package/lib/node/cli.d.ts +1 -1
  189. package/lib/node/cli.d.ts.map +1 -1
  190. package/lib/node/cli.js +9 -5
  191. package/lib/node/cli.js.map +1 -1
  192. package/lib/node/cli.spec.js +3 -3
  193. package/lib/node/cli.spec.js.map +1 -1
  194. package/lib/node/env-variables/env-variables-server.d.ts +3 -0
  195. package/lib/node/env-variables/env-variables-server.d.ts.map +1 -1
  196. package/lib/node/env-variables/env-variables-server.js +25 -1
  197. package/lib/node/env-variables/env-variables-server.js.map +1 -1
  198. package/lib/node/i18n/localization-server.d.ts +1 -1
  199. package/lib/node/i18n/localization-server.d.ts.map +1 -1
  200. package/lib/node/messaging/default-messaging-service.d.ts +29 -0
  201. package/lib/node/messaging/default-messaging-service.d.ts.map +1 -0
  202. package/lib/node/messaging/default-messaging-service.js +140 -0
  203. package/lib/node/messaging/default-messaging-service.js.map +1 -0
  204. package/lib/node/messaging/frontend-connection-service.d.ts +7 -0
  205. package/lib/node/messaging/frontend-connection-service.d.ts.map +1 -0
  206. package/lib/node/messaging/frontend-connection-service.js +19 -0
  207. package/lib/node/messaging/frontend-connection-service.js.map +1 -0
  208. package/lib/node/messaging/ipc-protocol.js +1 -1
  209. package/lib/node/messaging/ipc-protocol.js.map +1 -1
  210. package/lib/node/messaging/messaging-backend-module.d.ts.map +1 -1
  211. package/lib/node/messaging/messaging-backend-module.js +23 -9
  212. package/lib/node/messaging/messaging-backend-module.js.map +1 -1
  213. package/lib/node/messaging/messaging-service.d.ts +2 -3
  214. package/lib/node/messaging/messaging-service.d.ts.map +1 -1
  215. package/lib/node/messaging/test/test-web-socket-channel.d.ts +3 -3
  216. package/lib/node/messaging/test/test-web-socket-channel.d.ts.map +1 -1
  217. package/lib/node/messaging/test/test-web-socket-channel.js +38 -24
  218. package/lib/node/messaging/test/test-web-socket-channel.js.map +1 -1
  219. package/lib/node/messaging/websocket-endpoint.d.ts +21 -0
  220. package/lib/node/messaging/websocket-endpoint.d.ts.map +1 -0
  221. package/lib/node/messaging/websocket-endpoint.js +89 -0
  222. package/lib/node/messaging/websocket-endpoint.js.map +1 -0
  223. package/lib/node/messaging/websocket-frontend-connection-service.d.ts +30 -0
  224. package/lib/node/messaging/websocket-frontend-connection-service.d.ts.map +1 -0
  225. package/lib/node/messaging/websocket-frontend-connection-service.js +173 -0
  226. package/lib/node/messaging/websocket-frontend-connection-service.js.map +1 -0
  227. package/package.json +6 -6
  228. package/src/browser/common-frontend-contribution.ts +70 -9
  229. package/src/browser/connection-status-service.spec.ts +6 -6
  230. package/src/browser/connection-status-service.ts +2 -2
  231. package/src/browser/core-preferences.ts +16 -0
  232. package/src/browser/dialogs.ts +0 -34
  233. package/src/browser/frontend-application-module.ts +4 -0
  234. package/src/browser/icon-theme-contribution.ts +1 -0
  235. package/src/browser/icon-theme-service.ts +1 -0
  236. package/src/browser/language-icon-provider.ts +55 -0
  237. package/src/browser/language-service.ts +34 -0
  238. package/src/browser/messaging/connection-source.ts +26 -0
  239. package/src/browser/messaging/frontend-id-provider.ts +37 -0
  240. package/src/browser/messaging/messaging-frontend-module.ts +20 -2
  241. package/src/browser/messaging/service-connection-provider.ts +126 -0
  242. package/src/browser/messaging/ws-connection-provider.ts +16 -141
  243. package/src/browser/messaging/ws-connection-source.ts +210 -0
  244. package/src/browser/preload/i18n-preload-contribution.ts +1 -1
  245. package/src/browser/shell/application-shell.ts +1 -1
  246. package/src/browser/style/index.css +1 -0
  247. package/src/browser/style/os.css +87 -0
  248. package/src/browser/tree/tree-compression/compressed-tree-widget.tsx +27 -7
  249. package/src/browser/tree/tree-widget.tsx +21 -10
  250. package/src/browser/user-working-directory-provider.ts +32 -3
  251. package/src/browser/window/default-secondary-window-service.ts +54 -1
  252. package/src/common/contribution-filter/contribution-filter.ts +9 -0
  253. package/src/common/event.ts +1 -1
  254. package/src/common/i18n/nls.metadata.json +7695 -7220
  255. package/src/common/message-rpc/channel.ts +5 -1
  256. package/src/common/message-rpc/message-buffer.ts +6 -0
  257. package/src/common/message-rpc/uint8-array-message-buffer.ts +7 -0
  258. package/src/common/messaging/connection-management.ts +43 -0
  259. package/src/common/messaging/handler.ts +2 -0
  260. package/src/common/messaging/socket-write-buffer.ts +52 -0
  261. package/src/common/messaging/web-socket-channel.ts +28 -45
  262. package/src/common/nls.ts +12 -1
  263. package/src/electron-browser/messaging/electron-frontend-id-provider.ts +25 -0
  264. package/src/electron-browser/messaging/{electron-ipc-connection-provider.ts → electron-ipc-connection-source.ts} +17 -13
  265. package/src/electron-browser/messaging/{electron-local-ws-connection-provider.ts → electron-local-ws-connection-source.ts} +2 -2
  266. package/src/electron-browser/messaging/electron-messaging-frontend-module.ts +49 -12
  267. package/src/electron-browser/messaging/{electron-ws-connection-provider.ts → electron-ws-connection-source.ts} +6 -17
  268. package/src/electron-browser/preload.ts +16 -1
  269. package/src/electron-browser/window/electron-secondary-window-service.ts +1 -1
  270. package/src/electron-browser/window/electron-window-module.ts +1 -1
  271. package/src/electron-browser/window/electron-window-preferences.ts +1 -1
  272. package/src/electron-browser/window/electron-window-service.ts +11 -0
  273. package/src/electron-common/electron-api.ts +8 -0
  274. package/src/electron-main/electron-api-main.ts +20 -1
  275. package/src/electron-main/electron-main-application-module.ts +5 -5
  276. package/src/electron-main/electron-main-application.ts +72 -44
  277. package/src/electron-main/messaging/electron-messaging-contribution.ts +45 -43
  278. package/src/electron-main/messaging/electron-messaging-service.ts +1 -0
  279. package/src/electron-main/theia-electron-window.ts +4 -3
  280. package/src/node/backend-application.ts +14 -11
  281. package/src/node/cli.spec.ts +3 -3
  282. package/src/node/cli.ts +9 -5
  283. package/src/node/env-variables/env-variables-server.ts +21 -1
  284. package/src/node/i18n/localization-server.ts +1 -1
  285. package/src/node/messaging/default-messaging-service.ts +129 -0
  286. package/src/node/messaging/frontend-connection-service.ts +24 -0
  287. package/src/node/messaging/ipc-protocol.ts +1 -1
  288. package/src/node/messaging/messaging-backend-module.ts +25 -10
  289. package/src/node/messaging/messaging-service.ts +3 -3
  290. package/src/node/messaging/test/test-web-socket-channel.ts +32 -27
  291. package/src/node/messaging/websocket-endpoint.ts +79 -0
  292. package/src/node/messaging/websocket-frontend-connection-service.ts +171 -0
  293. package/lib/common/messaging/abstract-connection-provider.d.ts +0 -45
  294. package/lib/common/messaging/abstract-connection-provider.d.ts.map +0 -1
  295. package/lib/common/messaging/abstract-connection-provider.js +0 -93
  296. package/lib/common/messaging/abstract-connection-provider.js.map +0 -1
  297. package/lib/electron-browser/messaging/electron-ipc-connection-provider.d.ts +0 -19
  298. package/lib/electron-browser/messaging/electron-ipc-connection-provider.d.ts.map +0 -1
  299. package/lib/electron-browser/messaging/electron-ipc-connection-provider.js.map +0 -1
  300. package/lib/electron-browser/messaging/electron-local-ws-connection-provider.d.ts +0 -7
  301. package/lib/electron-browser/messaging/electron-local-ws-connection-provider.d.ts.map +0 -1
  302. package/lib/electron-browser/messaging/electron-local-ws-connection-provider.js.map +0 -1
  303. package/lib/electron-browser/messaging/electron-ws-connection-provider.d.ts +0 -17
  304. package/lib/electron-browser/messaging/electron-ws-connection-provider.d.ts.map +0 -1
  305. package/lib/electron-browser/messaging/electron-ws-connection-provider.js.map +0 -1
  306. package/lib/electron-common/messaging/electron-connection-handler.d.ts.map +0 -1
  307. package/lib/electron-common/messaging/electron-connection-handler.js.map +0 -1
  308. package/lib/electron-node/token/electron-token-messaging-contribution.d.ts +0 -16
  309. package/lib/electron-node/token/electron-token-messaging-contribution.d.ts.map +0 -1
  310. package/lib/electron-node/token/electron-token-messaging-contribution.js.map +0 -1
  311. package/lib/node/messaging/messaging-contribution.d.ts +0 -44
  312. package/lib/node/messaging/messaging-contribution.d.ts.map +0 -1
  313. package/lib/node/messaging/messaging-contribution.js +0 -210
  314. package/lib/node/messaging/messaging-contribution.js.map +0 -1
  315. package/src/common/messaging/abstract-connection-provider.ts +0 -115
  316. package/src/electron-node/token/electron-token-messaging-contribution.ts +0 -41
  317. package/src/node/messaging/messaging-contribution.ts +0 -197
  318. /package/lib/{electron-common → electron-main}/messaging/electron-connection-handler.d.ts +0 -0
  319. /package/lib/{electron-common → electron-main}/messaging/electron-connection-handler.js +0 -0
  320. /package/src/{electron-common → electron-main}/messaging/electron-connection-handler.ts +0 -0
@@ -1,10 +1,10 @@
1
1
  import { WebContents } from '@theia/electron/shared/electron';
2
- import { ContributionProvider } from '../../common/contribution-provider';
3
- import { MessagingContribution } from '../../node/messaging/messaging-contribution';
4
- import { ElectronMainApplicationContribution } from '../electron-main-application';
2
+ import { ConnectionHandlers } from '../../node/messaging/default-messaging-service';
3
+ import { AbstractChannel, Channel, MessageProvider } from '../../common/message-rpc/channel';
4
+ import { ConnectionHandler, ContributionProvider, Emitter, WriteBuffer } from '../../common';
5
+ import { MessagingService } from '../../node';
5
6
  import { ElectronMessagingService } from './electron-messaging-service';
6
- import { AbstractChannel, Channel, ChannelMultiplexer, MessageProvider } from '../../common/message-rpc/channel';
7
- import { ConnectionHandler, Emitter, WriteBuffer } from '../../common';
7
+ import { ElectronMainApplicationContribution } from '../electron-main-application';
8
8
  /**
9
9
  * This component replicates the role filled by `MessagingContribution` but for Electron.
10
10
  * Unlike the WebSocket based implementation, we do not expect to receive
@@ -15,28 +15,19 @@ import { ConnectionHandler, Emitter, WriteBuffer } from '../../common';
15
15
  export declare class ElectronMessagingContribution implements ElectronMainApplicationContribution, ElectronMessagingService {
16
16
  protected readonly messagingContributions: ContributionProvider<ElectronMessagingService.Contribution>;
17
17
  protected readonly connectionHandlers: ContributionProvider<ConnectionHandler>;
18
- protected readonly channelHandlers: MessagingContribution.ConnectionHandlers<Channel>;
18
+ protected readonly channelHandlers: ConnectionHandlers<Channel>;
19
19
  /**
20
20
  * Each electron window has a main channel and its own multiplexer to route multiple client messages the same IPC connection.
21
21
  */
22
- protected readonly windowChannelMultiplexer: Map<number, {
23
- channel: ElectronWebContentChannel;
24
- multiplexer: ChannelMultiplexer;
25
- }>;
22
+ protected readonly openChannels: Map<number, ElectronWebContentChannel>;
26
23
  protected init(): void;
27
- protected handleIpcEvent(sender: WebContents, data: Uint8Array): void;
28
- protected createWindowChannelData(sender: Electron.WebContents): {
29
- channel: ElectronWebContentChannel;
30
- multiplexer: ChannelMultiplexer;
31
- };
32
- /**
33
- * Creates the main channel to a window.
34
- * @param sender The window that the channel should be established to.
35
- */
36
- protected createWindowMainChannel(sender: WebContents): ElectronWebContentChannel;
37
- protected disposeMultiplexer(windowId: number, multiplexer: ChannelMultiplexer, reason: string): void;
38
- onStart(): void;
39
24
  ipcChannel(spec: string, callback: (params: any, channel: Channel) => void): void;
25
+ onStart(): void;
26
+ protected handleIpcEvent(sender: WebContents, data: Uint8Array): void;
27
+ protected createWindowChannel(sender: Electron.WebContents): ElectronWebContentChannel;
28
+ protected deleteChannel(senderId: number, reason: string): void;
29
+ protected readonly wsHandlers: ConnectionHandlers<unknown>;
30
+ registerConnectionHandler(spec: string, callback: (params: MessagingService.PathParams, channel: Channel) => void): void;
40
31
  }
41
32
  /**
42
33
  * Used to establish a connection between the ipcMain and the Electron frontend (window).
@@ -1 +1 @@
1
- {"version":3,"file":"electron-messaging-contribution.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF,OAAO,EAAE,mCAAmC,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACjH,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIvE;;;;;;GAMG;AAEH,qBACa,6BAA8B,YAAW,mCAAmC,EAAE,wBAAwB;IAG/G,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAGvG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAE/E,SAAS,CAAC,QAAQ,CAAC,eAAe,oDAA2D;IAC7F;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,wBAAwB;iBAA8B,yBAAyB;qBAAe,kBAAkB;OAAM;IAGzI,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAWrE,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,GAAG;QAAE,OAAO,EAAE,yBAAyB,CAAC;QAAC,WAAW,EAAE,kBAAkB,CAAA;KAAE;IAkBxI;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,yBAAyB;IAIjF,SAAS,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKrG,OAAO,IAAI,IAAI;IAYf,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;CAGpF;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,eAAe;IAK9C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW;IAF3D,SAAkB,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE9C,MAAM,EAAE,QAAQ,CAAC,WAAW;IAI3D,cAAc,IAAI,WAAW;CAYhC"}
1
+ {"version":3,"file":"electron-messaging-contribution.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,OAAO,EAAsB,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACjH,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,mCAAmC,EAAE,MAAM,8BAA8B,CAAC;AAEnF;;;;;;GAMG;AAEH,qBACa,6BAA8B,YAAW,mCAAmC,EAAE,wBAAwB;IAE/G,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAGvG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAE/E,SAAS,CAAC,QAAQ,CAAC,eAAe,8BAAqC;IAEvE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,yCAAgD;IAG/E,SAAS,CAAC,IAAI,IAAI,IAAI;IAKtB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIjF,OAAO,IAAI,IAAI;IAWf,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAWrE,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,GAAG,yBAAyB;IAiBtF,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAU/D,SAAS,CAAC,QAAQ,CAAC,UAAU,8BAA4B;IAEzD,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;CAG3H;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,eAAe;IAK9C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW;IAF3D,SAAkB,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE9C,MAAM,EAAE,QAAQ,CAAC,WAAW;IAI3D,cAAc,IAAI,WAAW;CAYhC"}
@@ -26,14 +26,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
26
26
  Object.defineProperty(exports, "__esModule", { value: true });
27
27
  exports.ElectronWebContentChannel = exports.ElectronMessagingContribution = void 0;
28
28
  const inversify_1 = require("inversify");
29
- const contribution_provider_1 = require("../../common/contribution-provider");
30
- const messaging_contribution_1 = require("../../node/messaging/messaging-contribution");
31
- const electron_connection_handler_1 = require("../../electron-common/messaging/electron-connection-handler");
32
- const electron_messaging_service_1 = require("./electron-messaging-service");
29
+ const default_messaging_service_1 = require("../../node/messaging/default-messaging-service");
33
30
  const channel_1 = require("../../common/message-rpc/channel");
34
31
  const common_1 = require("../../common");
35
32
  const uint8_array_message_buffer_1 = require("../../common/message-rpc/uint8-array-message-buffer");
36
33
  const electron_api_main_1 = require("../electron-api-main");
34
+ const electron_messaging_service_1 = require("./electron-messaging-service");
35
+ const electron_connection_handler_1 = require("./electron-connection-handler");
37
36
  /**
38
37
  * This component replicates the role filled by `MessagingContribution` but for Electron.
39
38
  * Unlike the WebSocket based implementation, we do not expect to receive
@@ -43,29 +42,44 @@ const electron_api_main_1 = require("../electron-api-main");
43
42
  */
44
43
  let ElectronMessagingContribution = class ElectronMessagingContribution {
45
44
  constructor() {
46
- this.channelHandlers = new messaging_contribution_1.MessagingContribution.ConnectionHandlers();
45
+ this.channelHandlers = new default_messaging_service_1.ConnectionHandlers();
47
46
  /**
48
47
  * Each electron window has a main channel and its own multiplexer to route multiple client messages the same IPC connection.
49
48
  */
50
- this.windowChannelMultiplexer = new Map();
49
+ this.openChannels = new Map();
50
+ this.wsHandlers = new default_messaging_service_1.ConnectionHandlers();
51
51
  }
52
52
  init() {
53
53
  electron_api_main_1.TheiaRendererAPI.onIpcData((sender, data) => this.handleIpcEvent(sender, data));
54
54
  }
55
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
56
+ ipcChannel(spec, callback) {
57
+ this.channelHandlers.push(spec, callback);
58
+ }
59
+ onStart() {
60
+ for (const contribution of this.messagingContributions.getContributions()) {
61
+ contribution.configure(this);
62
+ }
63
+ for (const connectionHandler of this.connectionHandlers.getContributions()) {
64
+ this.channelHandlers.push(connectionHandler.path, (params, channel) => {
65
+ connectionHandler.onConnection(channel);
66
+ });
67
+ }
68
+ }
55
69
  handleIpcEvent(sender, data) {
56
70
  var _a;
57
71
  // Get the multiplexer for a given window id
58
72
  try {
59
- const windowChannelData = (_a = this.windowChannelMultiplexer.get(sender.id)) !== null && _a !== void 0 ? _a : this.createWindowChannelData(sender);
60
- windowChannelData.channel.onMessageEmitter.fire(() => new uint8_array_message_buffer_1.Uint8ArrayReadBuffer(data));
73
+ const windowChannel = (_a = this.openChannels.get(sender.id)) !== null && _a !== void 0 ? _a : this.createWindowChannel(sender);
74
+ windowChannel.onMessageEmitter.fire(() => new uint8_array_message_buffer_1.Uint8ArrayReadBuffer(data));
61
75
  }
62
76
  catch (error) {
63
77
  console.error('IPC: Failed to handle message', { error, data });
64
78
  }
65
79
  }
66
- // Creates a new multiplexer for a given sender/window
67
- createWindowChannelData(sender) {
68
- const mainChannel = this.createWindowMainChannel(sender);
80
+ // Creates a new channel for a given sender/window
81
+ createWindowChannel(sender) {
82
+ const mainChannel = new ElectronWebContentChannel(sender);
69
83
  const multiplexer = new channel_1.ChannelMultiplexer(mainChannel);
70
84
  multiplexer.onDidOpenChannel(openEvent => {
71
85
  const { channel, id } = openEvent;
@@ -74,45 +88,31 @@ let ElectronMessagingContribution = class ElectronMessagingContribution {
74
88
  channel.onClose(() => console.debug(`Closing channel on service path '${id}'.`));
75
89
  }
76
90
  });
77
- sender.once('did-navigate', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was refreshed')); // When refreshing the browser window.
78
- sender.once('destroyed', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was closed')); // When closing the browser window.
79
- const data = { channel: mainChannel, multiplexer };
80
- this.windowChannelMultiplexer.set(sender.id, data);
81
- return data;
82
- }
83
- /**
84
- * Creates the main channel to a window.
85
- * @param sender The window that the channel should be established to.
86
- */
87
- createWindowMainChannel(sender) {
88
- return new ElectronWebContentChannel(sender);
89
- }
90
- disposeMultiplexer(windowId, multiplexer, reason) {
91
- multiplexer.onUnderlyingChannelClose({ reason });
92
- this.windowChannelMultiplexer.delete(windowId);
91
+ sender.once('did-navigate', () => this.deleteChannel(sender.id, 'Window was refreshed'));
92
+ sender.once('destroyed', () => this.deleteChannel(sender.id, 'Window was closed'));
93
+ this.openChannels.set(sender.id, mainChannel);
94
+ return mainChannel;
93
95
  }
94
- onStart() {
95
- for (const contribution of this.messagingContributions.getContributions()) {
96
- contribution.configure(this);
97
- }
98
- for (const connectionHandler of this.connectionHandlers.getContributions()) {
99
- this.channelHandlers.push(connectionHandler.path, (params, channel) => {
100
- connectionHandler.onConnection(channel);
96
+ deleteChannel(senderId, reason) {
97
+ const channel = this.openChannels.get(senderId);
98
+ if (channel) {
99
+ this.openChannels.delete(senderId);
100
+ channel.onCloseEmitter.fire({
101
+ reason: reason
101
102
  });
102
103
  }
103
104
  }
104
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
105
- ipcChannel(spec, callback) {
106
- this.channelHandlers.push(spec, callback);
105
+ registerConnectionHandler(spec, callback) {
106
+ this.wsHandlers.push(spec, callback);
107
107
  }
108
108
  };
109
109
  __decorate([
110
- (0, inversify_1.inject)(contribution_provider_1.ContributionProvider),
110
+ (0, inversify_1.inject)(common_1.ContributionProvider),
111
111
  (0, inversify_1.named)(electron_messaging_service_1.ElectronMessagingService.Contribution),
112
112
  __metadata("design:type", Object)
113
113
  ], ElectronMessagingContribution.prototype, "messagingContributions", void 0);
114
114
  __decorate([
115
- (0, inversify_1.inject)(contribution_provider_1.ContributionProvider),
115
+ (0, inversify_1.inject)(common_1.ContributionProvider),
116
116
  (0, inversify_1.named)(electron_connection_handler_1.ElectronConnectionHandler),
117
117
  __metadata("design:type", Object)
118
118
  ], ElectronMessagingContribution.prototype, "connectionHandlers", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"electron-messaging-contribution.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-messaging-contribution.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"electron-messaging-service.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACrC;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACpH;AACD,yBAAiB,wBAAwB,CAAC;IACtC,UAAiB,UAAU;QACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KACzB;IACM,MAAM,YAAY,eAAkD,CAAC;IAC5E,UAAiB,YAAY;QACzB,SAAS,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAAC;KACtD;CACJ"}
1
+ {"version":3,"file":"electron-messaging-service.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACrC;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACpH;AAED,yBAAiB,wBAAwB,CAAC;IACtC,UAAiB,UAAU;QACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KACzB;IACM,MAAM,YAAY,eAAkD,CAAC;IAC5E,UAAiB,YAAY;QACzB,SAAS,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAAC;KACtD;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"electron-messaging-service.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAWhF,IAAiB,wBAAwB,CAQxC;AARD,WAAiB,wBAAwB;IAIxB,qCAAY,GAAG,MAAM,CAAC,uCAAuC,CAAC,CAAC;AAIhF,CAAC,EARgB,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAQxC"}
1
+ {"version":3,"file":"electron-messaging-service.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAYhF,IAAiB,wBAAwB,CAQxC;AARD,WAAiB,wBAAwB;IAIxB,qCAAY,GAAG,MAAM,CAAC,uCAAuC,CAAC,CAAC;AAIhF,CAAC,EARgB,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAQxC"}
@@ -37,10 +37,10 @@ export declare class TheiaElectronWindow {
37
37
  */
38
38
  protected attachReadyToShow(): void;
39
39
  protected attachCloseListeners(): void;
40
- protected doCloseWindow(): void;
40
+ protected doCloseWindow(): Promise<void>;
41
41
  close(reason?: StopReason): Promise<boolean>;
42
42
  protected reload(): void;
43
- protected handleStopRequest(onSafeCallback: () => unknown, reason: StopReason): Promise<boolean>;
43
+ protected handleStopRequest(onSafeCallback: () => Promise<unknown>, reason: StopReason): Promise<boolean>;
44
44
  protected checkSafeToStop(reason: StopReason): Promise<boolean>;
45
45
  protected restoreMaximizedState(): void;
46
46
  protected trackApplicationState(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"theia-electron-window.d.ts","sourceRoot":"","sources":["../../src/electron-main/theia-electron-window.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEhG,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAMjE;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,+BAA+B;IAC9E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAE7E,eAAO,MAAM,uBAAuB,eAAoC,CAAC;AACzE,oBAAY,uBAAuB,GAAG,yBAAyB,CAAC;AAQhE,qBACa,mBAAmB;IACO,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IACxD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAC;IAEnG,SAAS,CAAC,iBAAiB,gBAAuB;IAElD,IAAI,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAE5B;IAED,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAAoD;IAEhF,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;IACjC,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,SAAS,CAAC,gBAAgB,UAAS;IACnC,SAAS,CAAC,gBAAgB,EAAE,wBAAwB,CAAU;IAG9D,SAAS,CAAC,IAAI,IAAI,IAAI;IAWtB,SAAS,CAAC,6BAA6B,IAAI,IAAI;IAuB/C;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAInC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAetC,SAAS,CAAC,aAAa,IAAI,IAAI;IAK/B,KAAK,CAAC,MAAM,GAAE,UAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,SAAS,CAAC,MAAM,IAAI,IAAI;cAOR,iBAAiB,CAAC,cAAc,EAAE,MAAM,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBtG,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAI/D,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAQvC,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAMvC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAItC,OAAO,IAAI,IAAI;CAGlB;AAED,MAAM,WAAW,0BAA0B;IACvC,CAAC,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC;CAChG;AAED,eAAO,MAAM,0BAA0B,eAAuC,CAAC"}
1
+ {"version":3,"file":"theia-electron-window.d.ts","sourceRoot":"","sources":["../../src/electron-main/theia-electron-window.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAEhG,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAMjE;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,+BAA+B;IAC9E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAE7E,eAAO,MAAM,uBAAuB,eAAoC,CAAC;AACzE,oBAAY,uBAAuB,GAAG,yBAAyB,CAAC;AAQhE,qBACa,mBAAmB;IACO,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IACxD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAC;IAEnG,SAAS,CAAC,iBAAiB,gBAAuB;IAElD,IAAI,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAE5B;IAED,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAAoD;IAEhF,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;IACjC,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,SAAS,CAAC,gBAAgB,UAAS;IACnC,SAAS,CAAC,gBAAgB,EAAE,wBAAwB,CAAU;IAG9D,SAAS,CAAC,IAAI,IAAI,IAAI;IAWtB,SAAS,CAAC,6BAA6B,IAAI,IAAI;IAuB/C;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAInC,SAAS,CAAC,oBAAoB,IAAI,IAAI;cAetB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9C,KAAK,CAAC,MAAM,GAAE,UAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,SAAS,CAAC,MAAM,IAAI,IAAI;cAOR,iBAAiB,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAsB/G,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAI/D,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAQvC,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAMvC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAItC,OAAO,IAAI,IAAI;CAGlB;AAED,MAAM,WAAW,0BAA0B;IACvC,CAAC,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC;CAChG;AAED,eAAO,MAAM,0BAA0B,eAAuC,CAAC"}
@@ -110,15 +110,16 @@ let TheiaElectronWindow = class TheiaElectronWindow {
110
110
  this.handleStopRequest(() => this.doCloseWindow(), frontend_application_state_1.StopReason.Close);
111
111
  }, this.toDispose);
112
112
  }
113
- doCloseWindow() {
113
+ async doCloseWindow() {
114
114
  this.closeIsConfirmed = true;
115
+ await electron_api_main_1.TheiaRendererAPI.sendAboutToClose(this._window.webContents);
115
116
  this._window.close();
116
117
  }
117
118
  close(reason = frontend_application_state_1.StopReason.Close) {
118
119
  return this.handleStopRequest(() => this.doCloseWindow(), reason);
119
120
  }
120
121
  reload() {
121
- this.handleStopRequest(() => {
122
+ this.handleStopRequest(async () => {
122
123
  this.applicationState = 'init';
123
124
  this._window.reload();
124
125
  }, frontend_application_state_1.StopReason.Reload);
@@ -1 +1 @@
1
- {"version":3,"file":"theia-electron-window.js","sourceRoot":"","sources":["../../src/electron-main/theia-electron-window.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theia-electron-window.js","sourceRoot":"","sources":["../../src/electron-main/theia-electron-window.ts"],"names":[],"mappings":"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"}
@@ -92,8 +92,10 @@ export declare class BackendApplication {
92
92
  protected readonly applicationPackage: ApplicationPackage;
93
93
  protected readonly processUtils: ProcessUtils;
94
94
  protected readonly stopwatch: Stopwatch;
95
+ private _configured;
95
96
  constructor(contributionsProvider: ContributionProvider<BackendApplicationContribution>, cliParams: BackendApplicationCliContribution);
96
97
  protected initialize(): Promise<void>;
98
+ get configured(): Promise<void>;
97
99
  protected init(): void;
98
100
  protected configure(): Promise<void>;
99
101
  use(...handlers: express.Handler[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"backend-application.d.ts","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend-application.d.ts","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}
@@ -119,7 +119,7 @@ let BackendApplication = class BackendApplication {
119
119
  process.on('SIGTERM', signalHandler);
120
120
  }
121
121
  async initialize() {
122
- for (const contribution of this.contributionsProvider.getContributions()) {
122
+ await Promise.all(this.contributionsProvider.getContributions().map(async (contribution) => {
123
123
  if (contribution.initialize) {
124
124
  try {
125
125
  await this.measure(contribution.constructor.name + '.initialize', () => contribution.initialize());
@@ -128,15 +128,16 @@ let BackendApplication = class BackendApplication {
128
128
  console.error('Could not initialize contribution', error);
129
129
  }
130
130
  }
131
- }
131
+ }));
132
+ }
133
+ get configured() {
134
+ return this._configured;
132
135
  }
133
136
  init() {
134
- this.configure();
137
+ this._configured = this.configure();
135
138
  }
136
139
  async configure() {
137
- // Do not await the initialization because contributions are expected to handle
138
- // concurrent initialize/configure in undefined order if they provide both
139
- this.initialize();
140
+ await this.initialize();
140
141
  this.app.get('*.js', this.serveGzipped.bind(this, 'text/javascript'));
141
142
  this.app.get('*.js.map', this.serveGzipped.bind(this, 'application/json'));
142
143
  this.app.get('*.css', this.serveGzipped.bind(this, 'text/css'));
@@ -148,16 +149,17 @@ let BackendApplication = class BackendApplication {
148
149
  this.app.get('*.ttf', this.serveGzipped.bind(this, 'font/ttf'));
149
150
  this.app.get('*.woff', this.serveGzipped.bind(this, 'font/woff'));
150
151
  this.app.get('*.woff2', this.serveGzipped.bind(this, 'font/woff2'));
151
- for (const contribution of this.contributionsProvider.getContributions()) {
152
+ await Promise.all(this.contributionsProvider.getContributions().map(async (contribution) => {
152
153
  if (contribution.configure) {
153
154
  try {
154
- await this.measure(contribution.constructor.name + '.configure', () => contribution.configure(this.app));
155
+ await contribution.configure(this.app);
155
156
  }
156
157
  catch (error) {
157
158
  console.error('Could not configure contribution', error);
158
159
  }
159
160
  }
160
- }
161
+ }));
162
+ console.info('configured all backend app contributions');
161
163
  }
162
164
  use(...handlers) {
163
165
  this.app.use(...handlers);
@@ -1 +1 @@
1
- {"version":3,"file":"backend-application.js","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend-application.js","sourceRoot":"","sources":["../../src/node/backend-application.ts"],"names":[],"mappings":"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"}
package/lib/node/cli.d.ts CHANGED
@@ -12,7 +12,7 @@ export interface CliContribution {
12
12
  export declare class CliManager {
13
13
  protected readonly contributionsProvider: ContributionProvider<CliContribution>;
14
14
  constructor(contributionsProvider: ContributionProvider<CliContribution>);
15
- initializeCli(argv: string[]): Promise<void>;
15
+ initializeCli<T>(argv: string[], postSetArguments: () => Promise<void>, defaultCommand: () => Promise<void>): Promise<void>;
16
16
  protected isExit(): boolean;
17
17
  }
18
18
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/node/cli.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,eAAO,MAAM,eAAe,eAA4B,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAClC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CAC3D;AAED,qBACa,UAAU;IAGnB,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,eAAe,CAAC;gBAA5D,qBAAqB,EAAE,oBAAoB,CAAC,eAAe,CAAC;IAEzE,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBlD,SAAS,CAAC,MAAM,IAAI,OAAO;CAG9B"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/node/cli.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,eAAO,MAAM,eAAe,eAA4B,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAClC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CAC3D;AAED,qBACa,UAAU;IAGnB,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,eAAe,CAAC;gBAA5D,qBAAqB,EAAE,oBAAoB,CAAC,eAAe,CAAC;IAEzE,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjI,SAAS,CAAC,MAAM,IAAI,OAAO;CAG9B"}
package/lib/node/cli.js CHANGED
@@ -36,7 +36,7 @@ let CliManager = class CliManager {
36
36
  constructor(contributionsProvider) {
37
37
  this.contributionsProvider = contributionsProvider;
38
38
  }
39
- async initializeCli(argv) {
39
+ async initializeCli(argv, postSetArguments, defaultCommand) {
40
40
  const pack = require('../../package.json');
41
41
  const version = pack.version;
42
42
  const command = yargs.version(version);
@@ -44,14 +44,18 @@ let CliManager = class CliManager {
44
44
  for (const contrib of this.contributionsProvider.getContributions()) {
45
45
  contrib.configure(command);
46
46
  }
47
- const args = command
47
+ await command
48
48
  .detectLocale(false)
49
49
  .showHelpOnFail(false, 'Specify --help for available options')
50
50
  .help('help')
51
+ .middleware(async (args) => {
52
+ for (const contrib of this.contributionsProvider.getContributions()) {
53
+ await contrib.setArguments(args);
54
+ }
55
+ await postSetArguments();
56
+ })
57
+ .command('$0', false, () => { }, defaultCommand)
51
58
  .parse(argv);
52
- for (const contrib of this.contributionsProvider.getContributions()) {
53
- await contrib.setArguments(args);
54
- }
55
59
  }
56
60
  isExit() {
57
61
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/node/cli.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;;;;;;;;;;;;AAEhF,+BAA+B;AAC/B,yCAAsD;AACtD,2EAAuE;AAG1D,QAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAWzD,IAAa,UAAU,GAAvB,MAAa,UAAU;IAEnB,YACmB,qBAA4D;QAA5D,0BAAqB,GAArB,qBAAqB,CAAuC;IAAI,CAAC;IAEpF,KAAK,CAAC,aAAa,CAAC,IAAc;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,EAAE;YACjE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SAC9B;QACD,MAAM,IAAI,GAAG,OAAO;aACf,YAAY,CAAC,KAAK,CAAC;aACnB,cAAc,CAAC,KAAK,EAAE,sCAAsC,CAAC;aAC7D,IAAI,CAAC,MAAM,CAAC;aACZ,KAAK,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,EAAE;YACjE,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SACpC;IACL,CAAC;IAES,MAAM;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AA1BY,UAAU;IADtB,IAAA,sBAAU,GAAE;IAGI,WAAA,IAAA,kBAAM,EAAC,4CAAoB,CAAC,CAAA;IAAE,WAAA,IAAA,iBAAK,EAAC,uBAAe,CAAC,CAAA;;GAFxD,UAAU,CA0BtB;AA1BY,gCAAU"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/node/cli.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;;;;;;;;;;;;AAEhF,+BAA+B;AAC/B,yCAAsD;AACtD,2EAAuE;AAG1D,QAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAWzD,IAAa,UAAU,GAAvB,MAAa,UAAU;IAEnB,YACmB,qBAA4D;QAA5D,0BAAqB,GAArB,qBAAqB,CAAuC;IAAI,CAAC;IAEpF,KAAK,CAAC,aAAa,CAAI,IAAc,EAAE,gBAAqC,EAAE,cAAmC;QAC7G,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,EAAE;YACjE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SAC9B;QACD,MAAM,OAAO;aACR,YAAY,CAAC,KAAK,CAAC;aACnB,cAAc,CAAC,KAAK,EAAE,sCAAsC,CAAC;aAC7D,IAAI,CAAC,MAAM,CAAC;aACZ,UAAU,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YACrB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,EAAE;gBACjE,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;aACpC;YACD,MAAM,gBAAgB,EAAE,CAAC;QAC7B,CAAC,CAAC;aACD,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,cAAc,CAAC;aAC/C,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAES,MAAM;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AA9BY,UAAU;IADtB,IAAA,sBAAU,GAAE;IAGI,WAAA,IAAA,kBAAM,EAAC,4CAAoB,CAAC,CAAA;IAAE,WAAA,IAAA,iBAAK,EAAC,uBAAe,CAAC,CAAA;;GAFxD,UAAU,CA8BtB;AA9BY,gCAAU"}
@@ -41,7 +41,7 @@ describe('CliManager', () => {
41
41
  value.resolve(args['foo']);
42
42
  }
43
43
  });
44
- await manager.initializeCli(['-f', 'bla']);
44
+ await manager.initializeCli(['-f', 'bla'], () => Promise.resolve(), () => Promise.resolve());
45
45
  chai.assert.equal(await value.promise, 'bla');
46
46
  });
47
47
  it('resolves with default', async () => {
@@ -55,12 +55,12 @@ describe('CliManager', () => {
55
55
  value.resolve(args['bar']);
56
56
  }
57
57
  });
58
- await manager.initializeCli(['--foo']);
58
+ await manager.initializeCli(['--foo'], () => Promise.resolve(), () => Promise.resolve());
59
59
  chai.assert.equal(await value.promise, 'my-default');
60
60
  });
61
61
  it('prints help and exits', async () => assertExits(async () => {
62
62
  const manager = new TestCliManager();
63
- await manager.initializeCli(['--help']);
63
+ await manager.initializeCli(['--help'], () => Promise.resolve(), () => Promise.resolve());
64
64
  }));
65
65
  });
66
66
  async function assertExits(code) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.spec.js","sourceRoot":"","sources":["../../src/node/cli.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.spec.js","sourceRoot":"","sources":["../../src/node/cli.spec.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,9 @@ export declare class EnvVariablesServerImpl implements EnvVariablesServer {
5
5
  };
6
6
  protected readonly homeDirUri: string;
7
7
  protected readonly configDirUri: Promise<string>;
8
+ protected readonly pathExistenceCache: {
9
+ [key: string]: boolean;
10
+ };
8
11
  constructor();
9
12
  protected createConfigDirUri(): Promise<string>;
10
13
  getExecPath(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"env-variables-server.d.ts","sourceRoot":"","sources":["../../../src/node/env-variables/env-variables-server.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAI7E,qBACa,sBAAuB,YAAW,kBAAkB;IAE7D,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE,CAAM;IAC7D,SAAS,CAAC,QAAQ,CAAC,UAAU,SAAwC;IACrE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;cAejC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAItC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAO7D,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5B,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAIhC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAapC;;OAEG;IACH,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAY1D"}
1
+ {"version":3,"file":"env-variables-server.d.ts","sourceRoot":"","sources":["../../../src/node/env-variables/env-variables-server.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAI7E,qBACa,sBAAuB,YAAW,kBAAkB;IAE7D,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE,CAAM;IAC7D,SAAS,CAAC,QAAQ,CAAC,UAAU,SAAwC;IACrE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAM;;cAevD,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAsB/C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAItC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAO7D,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5B,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAIhC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAapC;;OAEG;IACH,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAY1D"}
@@ -29,12 +29,14 @@ const path_1 = require("path");
29
29
  const os_1 = require("os");
30
30
  const inversify_1 = require("inversify");
31
31
  const drivelist = require("drivelist");
32
+ const fs_extra_1 = require("fs-extra");
32
33
  const os_2 = require("../../common/os");
33
34
  const file_uri_1 = require("../file-uri");
34
35
  let EnvVariablesServerImpl = class EnvVariablesServerImpl {
35
36
  constructor() {
36
37
  this.envs = {};
37
38
  this.homeDirUri = file_uri_1.FileUri.create((0, os_1.homedir)()).toString();
39
+ this.pathExistenceCache = {};
38
40
  this.configDirUri = this.createConfigDirUri();
39
41
  this.configDirUri.then(configDirUri => console.log(`Configuration directory URI: '${configDirUri}'`));
40
42
  const prEnv = process.env;
@@ -47,7 +49,29 @@ let EnvVariablesServerImpl = class EnvVariablesServerImpl {
47
49
  });
48
50
  }
49
51
  async createConfigDirUri() {
50
- return file_uri_1.FileUri.create(process.env.THEIA_CONFIG_DIR || (0, path_1.join)((0, os_1.homedir)(), '.theia')).toString();
52
+ var _a, _b;
53
+ var _c, _d;
54
+ let dataFolderPath = '';
55
+ if (process.env.THEIA_APP_PROJECT_PATH) {
56
+ dataFolderPath = (0, path_1.join)(process.env.THEIA_APP_PROJECT_PATH, 'data');
57
+ }
58
+ const userDataPath = (0, path_1.join)(dataFolderPath, 'user-data');
59
+ const dataFolderExists = (_a = (_c = this.pathExistenceCache)[dataFolderPath]) !== null && _a !== void 0 ? _a : (_c[dataFolderPath] = await (0, fs_extra_1.pathExists)(dataFolderPath));
60
+ if (dataFolderExists) {
61
+ const userDataExists = (_b = (_d = this.pathExistenceCache)[userDataPath]) !== null && _b !== void 0 ? _b : (_d[userDataPath] = await (0, fs_extra_1.pathExists)(userDataPath));
62
+ if (userDataExists) {
63
+ process.env.THEIA_CONFIG_DIR = userDataPath;
64
+ }
65
+ else {
66
+ await (0, fs_extra_1.mkdir)(userDataPath);
67
+ process.env.THEIA_CONFIG_DIR = userDataPath;
68
+ this.pathExistenceCache[userDataPath] = true;
69
+ }
70
+ }
71
+ else {
72
+ process.env.THEIA_CONFIG_DIR = (0, path_1.join)((0, os_1.homedir)(), '.theia');
73
+ }
74
+ return file_uri_1.FileUri.create(process.env.THEIA_CONFIG_DIR).toString();
51
75
  }
52
76
  async getExecPath() {
53
77
  return process.execPath;