@theia/core 1.47.1 → 1.48.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1531) hide show
  1. package/README.md +6 -6
  2. package/i18n/nls.cs.json +541 -537
  3. package/i18n/nls.de.json +541 -537
  4. package/i18n/nls.es.json +541 -537
  5. package/i18n/nls.fr.json +541 -537
  6. package/i18n/nls.hu.json +541 -537
  7. package/i18n/nls.it.json +541 -537
  8. package/i18n/nls.ja.json +541 -537
  9. package/i18n/nls.json +541 -537
  10. package/i18n/nls.pl.json +541 -537
  11. package/i18n/nls.pt-br.json +541 -537
  12. package/i18n/nls.pt-pt.json +541 -537
  13. package/i18n/nls.ru.json +541 -537
  14. package/i18n/nls.zh-cn.json +541 -537
  15. package/lib/browser/about-dialog.d.ts +33 -33
  16. package/lib/browser/about-dialog.js +125 -125
  17. package/lib/browser/authentication-service.d.ts +144 -144
  18. package/lib/browser/authentication-service.js +324 -324
  19. package/lib/browser/breadcrumbs/breadcrumb-popup-container.d.ts +34 -34
  20. package/lib/browser/breadcrumbs/breadcrumb-popup-container.js +106 -106
  21. package/lib/browser/breadcrumbs/breadcrumb-renderer.d.ts +12 -12
  22. package/lib/browser/breadcrumbs/breadcrumb-renderer.js +37 -37
  23. package/lib/browser/breadcrumbs/breadcrumbs-constants.d.ts +49 -49
  24. package/lib/browser/breadcrumbs/breadcrumbs-constants.js +27 -27
  25. package/lib/browser/breadcrumbs/breadcrumbs-renderer.d.ts +43 -43
  26. package/lib/browser/breadcrumbs/breadcrumbs-renderer.js +179 -179
  27. package/lib/browser/breadcrumbs/breadcrumbs-service.d.ts +32 -32
  28. package/lib/browser/breadcrumbs/breadcrumbs-service.js +111 -111
  29. package/lib/browser/breadcrumbs/index.d.ts +5 -5
  30. package/lib/browser/breadcrumbs/index.js +23 -23
  31. package/lib/browser/browser-clipboard-service.d.ts +23 -23
  32. package/lib/browser/browser-clipboard-service.js +107 -107
  33. package/lib/browser/browser.d.ts +37 -37
  34. package/lib/browser/browser.js +196 -196
  35. package/lib/browser/clipboard-service.d.ts +6 -6
  36. package/lib/browser/clipboard-service.js +19 -19
  37. package/lib/browser/color-application-contribution.d.ts +26 -24
  38. package/lib/browser/color-application-contribution.d.ts.map +1 -1
  39. package/lib/browser/color-application-contribution.js +110 -100
  40. package/lib/browser/color-application-contribution.js.map +1 -1
  41. package/lib/browser/color-registry.d.ts +14 -14
  42. package/lib/browser/color-registry.js +58 -58
  43. package/lib/browser/command-open-handler.d.ts +9 -9
  44. package/lib/browser/command-open-handler.js +58 -58
  45. package/lib/browser/common-frontend-contribution.d.ts +212 -206
  46. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  47. package/lib/browser/common-frontend-contribution.js +2338 -2296
  48. package/lib/browser/common-frontend-contribution.js.map +1 -1
  49. package/lib/browser/common-styling-participants.d.ts +27 -27
  50. package/lib/browser/common-styling-participants.js +365 -365
  51. package/lib/browser/connection-status-service.d.ts +77 -77
  52. package/lib/browser/connection-status-service.js +198 -198
  53. package/lib/browser/connection-status-service.spec.d.ts +1 -1
  54. package/lib/browser/connection-status-service.spec.js +161 -161
  55. package/lib/browser/context-key-service.d.ts +82 -82
  56. package/lib/browser/context-key-service.js +83 -83
  57. package/lib/browser/context-menu-renderer.d.ts +54 -54
  58. package/lib/browser/context-menu-renderer.js +87 -87
  59. package/lib/browser/core-preferences.d.ts +37 -37
  60. package/lib/browser/core-preferences.js +300 -300
  61. package/lib/browser/credentials-service.d.ts +35 -35
  62. package/lib/browser/credentials-service.js +80 -80
  63. package/lib/browser/decoration-style.d.ts +6 -6
  64. package/lib/browser/decoration-style.js +64 -64
  65. package/lib/browser/decorations-service.d.ts +30 -30
  66. package/lib/browser/decorations-service.js +157 -158
  67. package/lib/browser/decorations-service.js.map +1 -1
  68. package/lib/browser/dialogs/react-dialog.d.ts +17 -17
  69. package/lib/browser/dialogs/react-dialog.js +49 -49
  70. package/lib/browser/dialogs.d.ts +135 -135
  71. package/lib/browser/dialogs.js +446 -446
  72. package/lib/browser/diff-uris.d.ts +17 -17
  73. package/lib/browser/diff-uris.js +115 -115
  74. package/lib/browser/encoding-registry.d.ts +18 -18
  75. package/lib/browser/encoding-registry.js +88 -88
  76. package/lib/browser/endpoint.d.ts +42 -42
  77. package/lib/browser/endpoint.js +120 -120
  78. package/lib/browser/endpoint.spec.d.ts +1 -1
  79. package/lib/browser/endpoint.spec.js +122 -122
  80. package/lib/browser/external-uri-service.d.ts +24 -24
  81. package/lib/browser/external-uri-service.js +72 -72
  82. package/lib/browser/frontend-application-bindings.d.ts +5 -5
  83. package/lib/browser/frontend-application-bindings.js +56 -56
  84. package/lib/browser/frontend-application-config-provider.d.ts +8 -8
  85. package/lib/browser/frontend-application-config-provider.js +46 -46
  86. package/lib/browser/frontend-application-config-provider.spec.d.ts +1 -1
  87. package/lib/browser/frontend-application-config-provider.spec.js +40 -40
  88. package/lib/browser/frontend-application-contribution.d.ts +75 -75
  89. package/lib/browser/frontend-application-contribution.js +45 -45
  90. package/lib/browser/frontend-application-module.d.ts +8 -8
  91. package/lib/browser/frontend-application-module.js +355 -355
  92. package/lib/browser/frontend-application-state.d.ts +19 -19
  93. package/lib/browser/frontend-application-state.js +71 -71
  94. package/lib/browser/frontend-application.d.ts +86 -86
  95. package/lib/browser/frontend-application.js +308 -308
  96. package/lib/browser/hover-service.d.ts +50 -50
  97. package/lib/browser/hover-service.js +199 -199
  98. package/lib/browser/http-open-handler.d.ts +14 -14
  99. package/lib/browser/http-open-handler.js +46 -46
  100. package/lib/browser/i18n/i18n-frontend-module.d.ts +3 -3
  101. package/lib/browser/i18n/i18n-frontend-module.js +25 -25
  102. package/lib/browser/i18n/language-quick-pick-service.d.ts +15 -15
  103. package/lib/browser/i18n/language-quick-pick-service.js +136 -136
  104. package/lib/browser/icon-registry.d.ts +56 -56
  105. package/lib/browser/icon-registry.js +24 -24
  106. package/lib/browser/icon-theme-contribution.d.ts +23 -23
  107. package/lib/browser/icon-theme-contribution.js +64 -64
  108. package/lib/browser/icon-theme-service.d.ts +63 -63
  109. package/lib/browser/icon-theme-service.js +198 -198
  110. package/lib/browser/index.d.ts +31 -31
  111. package/lib/browser/index.js +49 -49
  112. package/lib/browser/json-schema-store.d.ts +37 -37
  113. package/lib/browser/json-schema-store.js +111 -111
  114. package/lib/browser/keybinding.d.ts +288 -288
  115. package/lib/browser/keybinding.d.ts.map +1 -1
  116. package/lib/browser/keybinding.js +677 -674
  117. package/lib/browser/keybinding.js.map +1 -1
  118. package/lib/browser/keybinding.spec.d.ts +1 -1
  119. package/lib/browser/keybinding.spec.js +451 -451
  120. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.d.ts +13 -13
  121. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js +110 -110
  122. package/lib/browser/keyboard/browser-keyboard-layout-provider.d.ts +91 -91
  123. package/lib/browser/keyboard/browser-keyboard-layout-provider.js +418 -418
  124. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.d.ts +1 -1
  125. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.js +152 -152
  126. package/lib/browser/keyboard/browser-keyboard-module.d.ts +3 -3
  127. package/lib/browser/keyboard/browser-keyboard-module.js +30 -30
  128. package/lib/browser/keyboard/index.d.ts +4 -4
  129. package/lib/browser/keyboard/index.js +22 -22
  130. package/lib/browser/keyboard/keyboard-layout-service.d.ts +49 -49
  131. package/lib/browser/keyboard/keyboard-layout-service.js +427 -427
  132. package/lib/browser/keyboard/keyboard-layout-service.spec.d.ts +1 -1
  133. package/lib/browser/keyboard/keyboard-layout-service.spec.js +110 -110
  134. package/lib/browser/keyboard/keys.d.ts +4 -4
  135. package/lib/browser/keyboard/keys.js +22 -22
  136. package/lib/browser/keyboard/keys.spec.d.ts +1 -1
  137. package/lib/browser/keyboard/keys.spec.js +205 -205
  138. package/lib/browser/keys.d.ts +2 -2
  139. package/lib/browser/keys.js +28 -28
  140. package/lib/browser/label-parser.d.ts +34 -34
  141. package/lib/browser/label-parser.js +107 -107
  142. package/lib/browser/label-parser.spec.d.ts +1 -1
  143. package/lib/browser/label-parser.spec.js +146 -146
  144. package/lib/browser/label-provider.d.ts +140 -140
  145. package/lib/browser/label-provider.js +310 -310
  146. package/lib/browser/label-provider.spec.d.ts +1 -1
  147. package/lib/browser/label-provider.spec.js +53 -53
  148. package/lib/browser/language-icon-provider.d.ts +14 -14
  149. package/lib/browser/language-icon-provider.js +65 -65
  150. package/lib/browser/language-service.d.ts +38 -38
  151. package/lib/browser/language-service.js +66 -66
  152. package/lib/browser/logger-frontend-module.d.ts +2 -2
  153. package/lib/browser/logger-frontend-module.js +63 -63
  154. package/lib/browser/markdown-rendering/markdown-renderer.d.ts +39 -39
  155. package/lib/browser/markdown-rendering/markdown-renderer.js +72 -72
  156. package/lib/browser/menu/browser-context-menu-renderer.d.ts +12 -12
  157. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  158. package/lib/browser/menu/browser-context-menu-renderer.js +51 -50
  159. package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
  160. package/lib/browser/menu/browser-menu-module.d.ts +3 -3
  161. package/lib/browser/menu/browser-menu-module.js +28 -28
  162. package/lib/browser/menu/browser-menu-plugin.d.ts +103 -103
  163. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  164. package/lib/browser/menu/browser-menu-plugin.js +439 -439
  165. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  166. package/lib/browser/menu/context-menu-context.d.ts +7 -7
  167. package/lib/browser/menu/context-menu-context.js +42 -42
  168. package/lib/browser/messaging/connection-source.d.ts +8 -8
  169. package/lib/browser/messaging/connection-source.js +19 -19
  170. package/lib/browser/messaging/frontend-id-provider.d.ts +12 -12
  171. package/lib/browser/messaging/frontend-id-provider.js +34 -34
  172. package/lib/browser/messaging/index.d.ts +1 -1
  173. package/lib/browser/messaging/index.js +19 -19
  174. package/lib/browser/messaging/messaging-frontend-module.d.ts +2 -2
  175. package/lib/browser/messaging/messaging-frontend-module.js +41 -41
  176. package/lib/browser/messaging/service-connection-provider.d.ts +47 -47
  177. package/lib/browser/messaging/service-connection-provider.js +106 -106
  178. package/lib/browser/messaging/ws-connection-provider.d.ts +12 -12
  179. package/lib/browser/messaging/ws-connection-provider.js +49 -49
  180. package/lib/browser/messaging/ws-connection-source.d.ts +42 -42
  181. package/lib/browser/messaging/ws-connection-source.js +217 -217
  182. package/lib/browser/mime-service.d.ts +7 -7
  183. package/lib/browser/mime-service.js +30 -30
  184. package/lib/browser/navigatable-types.d.ts +33 -33
  185. package/lib/browser/navigatable-types.js +63 -63
  186. package/lib/browser/navigatable.d.ts +8 -8
  187. package/lib/browser/navigatable.js +38 -38
  188. package/lib/browser/opener-service.d.ts +79 -79
  189. package/lib/browser/opener-service.js +79 -79
  190. package/lib/browser/opener-service.spec.d.ts +1 -1
  191. package/lib/browser/opener-service.spec.js +46 -46
  192. package/lib/browser/performance/frontend-stopwatch.d.ts +20 -20
  193. package/lib/browser/performance/frontend-stopwatch.js +66 -66
  194. package/lib/browser/performance/index.d.ts +2 -2
  195. package/lib/browser/performance/index.js +20 -20
  196. package/lib/browser/performance/measurement-frontend-bindings.d.ts +19 -19
  197. package/lib/browser/performance/measurement-frontend-bindings.js +32 -32
  198. package/lib/browser/preferences/index.d.ts +7 -7
  199. package/lib/browser/preferences/index.js +25 -25
  200. package/lib/browser/preferences/injectable-preference-proxy.d.ts +51 -51
  201. package/lib/browser/preferences/injectable-preference-proxy.js +276 -276
  202. package/lib/browser/preferences/preference-configurations.d.ts +22 -22
  203. package/lib/browser/preferences/preference-configurations.js +72 -72
  204. package/lib/browser/preferences/preference-contribution.d.ts +111 -111
  205. package/lib/browser/preferences/preference-contribution.js +386 -386
  206. package/lib/browser/preferences/preference-language-override-service.d.ts +39 -39
  207. package/lib/browser/preferences/preference-language-override-service.js +107 -107
  208. package/lib/browser/preferences/preference-provider.d.ts +132 -132
  209. package/lib/browser/preferences/preference-provider.js +219 -219
  210. package/lib/browser/preferences/preference-provider.spec.d.ts +1 -1
  211. package/lib/browser/preferences/preference-provider.spec.js +33 -33
  212. package/lib/browser/preferences/preference-proxy.d.ts +150 -150
  213. package/lib/browser/preferences/preference-proxy.js +229 -229
  214. package/lib/browser/preferences/preference-proxy.spec.d.ts +1 -1
  215. package/lib/browser/preferences/preference-proxy.spec.js +337 -337
  216. package/lib/browser/preferences/preference-schema-provider.spec.d.ts +1 -1
  217. package/lib/browser/preferences/preference-schema-provider.spec.js +115 -115
  218. package/lib/browser/preferences/preference-scope.d.ts +2 -2
  219. package/lib/browser/preferences/preference-scope.js +20 -20
  220. package/lib/browser/preferences/preference-service.d.ts +278 -278
  221. package/lib/browser/preferences/preference-service.js +350 -350
  222. package/lib/browser/preferences/preference-service.spec.d.ts +1 -1
  223. package/lib/browser/preferences/preference-service.spec.js +505 -505
  224. package/lib/browser/preferences/preference-validation-service.d.ts +57 -57
  225. package/lib/browser/preferences/preference-validation-service.js +346 -346
  226. package/lib/browser/preferences/preference-validation-service.spec.d.ts +1 -1
  227. package/lib/browser/preferences/preference-validation-service.spec.js +330 -330
  228. package/lib/browser/preferences/test/index.d.ts +3 -3
  229. package/lib/browser/preferences/test/index.js +21 -21
  230. package/lib/browser/preferences/test/mock-preference-provider.d.ts +16 -16
  231. package/lib/browser/preferences/test/mock-preference-provider.js +46 -46
  232. package/lib/browser/preferences/test/mock-preference-proxy.d.ts +3 -3
  233. package/lib/browser/preferences/test/mock-preference-proxy.js +49 -49
  234. package/lib/browser/preferences/test/mock-preference-service.d.ts +28 -28
  235. package/lib/browser/preferences/test/mock-preference-service.js +59 -59
  236. package/lib/browser/preload/i18n-preload-contribution.d.ts +6 -6
  237. package/lib/browser/preload/i18n-preload-contribution.js +54 -54
  238. package/lib/browser/preload/os-preload-contribution.d.ts +6 -6
  239. package/lib/browser/preload/os-preload-contribution.js +40 -40
  240. package/lib/browser/preload/preload-module.d.ts +3 -3
  241. package/lib/browser/preload/preload-module.js +38 -38
  242. package/lib/browser/preload/preloader.d.ts +11 -11
  243. package/lib/browser/preload/preloader.js +36 -36
  244. package/lib/browser/preload/theme-preload-contribution.d.ts +4 -4
  245. package/lib/browser/preload/theme-preload-contribution.js +34 -34
  246. package/lib/browser/progress-bar-factory.d.ts +11 -11
  247. package/lib/browser/progress-bar-factory.js +20 -20
  248. package/lib/browser/progress-bar.d.ts +15 -15
  249. package/lib/browser/progress-bar.js +81 -81
  250. package/lib/browser/progress-client.d.ts +12 -12
  251. package/lib/browser/progress-client.js +53 -53
  252. package/lib/browser/progress-location-service.d.ts +21 -21
  253. package/lib/browser/progress-location-service.js +91 -91
  254. package/lib/browser/progress-location-service.spec.d.ts +1 -1
  255. package/lib/browser/progress-location-service.spec.js +44 -44
  256. package/lib/browser/progress-status-bar-item.d.ts +16 -16
  257. package/lib/browser/progress-status-bar-item.js +81 -81
  258. package/lib/browser/quick-input/index.d.ts +8 -8
  259. package/lib/browser/quick-input/index.js +26 -26
  260. package/lib/browser/quick-input/quick-access.d.ts +53 -53
  261. package/lib/browser/quick-input/quick-access.js +20 -20
  262. package/lib/browser/quick-input/quick-command-frontend-contribution.d.ts +11 -11
  263. package/lib/browser/quick-input/quick-command-frontend-contribution.js +96 -96
  264. package/lib/browser/quick-input/quick-command-service.d.ts +59 -59
  265. package/lib/browser/quick-input/quick-command-service.js +225 -225
  266. package/lib/browser/quick-input/quick-help-service.d.ts +11 -11
  267. package/lib/browser/quick-input/quick-help-service.js +83 -83
  268. package/lib/browser/quick-input/quick-input-frontend-contribution.d.ts +7 -7
  269. package/lib/browser/quick-input/quick-input-frontend-contribution.js +38 -38
  270. package/lib/browser/quick-input/quick-input-service.d.ts +1 -1
  271. package/lib/browser/quick-input/quick-input-service.js +19 -19
  272. package/lib/browser/quick-input/quick-input-service.spec.d.ts +1 -1
  273. package/lib/browser/quick-input/quick-input-service.spec.js +159 -159
  274. package/lib/browser/quick-input/quick-pick-service-impl.d.ts +30 -30
  275. package/lib/browser/quick-input/quick-pick-service-impl.js +69 -69
  276. package/lib/browser/quick-input/quick-view-service.d.ts +23 -23
  277. package/lib/browser/quick-input/quick-view-service.js +78 -78
  278. package/lib/browser/request/browser-request-module.d.ts +18 -18
  279. package/lib/browser/request/browser-request-module.js +23 -23
  280. package/lib/browser/request/browser-request-service.d.ts +41 -41
  281. package/lib/browser/request/browser-request-service.js +172 -172
  282. package/lib/browser/resource-context-key.d.ts +19 -19
  283. package/lib/browser/resource-context-key.js +75 -75
  284. package/lib/browser/save-resource-service.d.ts +35 -35
  285. package/lib/browser/save-resource-service.js +64 -64
  286. package/lib/browser/saveable.d.ts +124 -124
  287. package/lib/browser/saveable.js +274 -274
  288. package/lib/browser/secondary-window-handler.d.ts +65 -64
  289. package/lib/browser/secondary-window-handler.d.ts.map +1 -1
  290. package/lib/browser/secondary-window-handler.js +193 -200
  291. package/lib/browser/secondary-window-handler.js.map +1 -1
  292. package/lib/browser/shell/additional-views-menu-widget.d.ts +19 -19
  293. package/lib/browser/shell/additional-views-menu-widget.js +73 -73
  294. package/lib/browser/shell/application-shell-mouse-tracker.d.ts +30 -30
  295. package/lib/browser/shell/application-shell-mouse-tracker.js +99 -99
  296. package/lib/browser/shell/application-shell.d.ts +574 -572
  297. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  298. package/lib/browser/shell/application-shell.js +1992 -1984
  299. package/lib/browser/shell/application-shell.js.map +1 -1
  300. package/lib/browser/shell/current-widget-command-adapter.d.ts +23 -23
  301. package/lib/browser/shell/current-widget-command-adapter.js +41 -41
  302. package/lib/browser/shell/index.d.ts +7 -7
  303. package/lib/browser/shell/index.js +25 -25
  304. package/lib/browser/shell/shell-layout-restorer.d.ts +123 -123
  305. package/lib/browser/shell/shell-layout-restorer.js +336 -336
  306. package/lib/browser/shell/side-panel-handler.d.ts +286 -286
  307. package/lib/browser/shell/side-panel-handler.js +659 -659
  308. package/lib/browser/shell/side-panel-toolbar.d.ts +25 -25
  309. package/lib/browser/shell/side-panel-toolbar.js +96 -96
  310. package/lib/browser/shell/sidebar-bottom-menu-widget.d.ts +9 -9
  311. package/lib/browser/shell/sidebar-bottom-menu-widget.js +41 -41
  312. package/lib/browser/shell/sidebar-menu-widget.d.ts +38 -38
  313. package/lib/browser/shell/sidebar-menu-widget.js +113 -113
  314. package/lib/browser/shell/sidebar-top-menu-widget.d.ts +6 -6
  315. package/lib/browser/shell/sidebar-top-menu-widget.js +30 -30
  316. package/lib/browser/shell/split-panels.d.ts +42 -42
  317. package/lib/browser/shell/split-panels.js +172 -172
  318. package/lib/browser/shell/tab-bar-decorator.d.ts +40 -40
  319. package/lib/browser/shell/tab-bar-decorator.js +87 -87
  320. package/lib/browser/shell/tab-bar-toolbar/index.d.ts +3 -3
  321. package/lib/browser/shell/tab-bar-toolbar/index.js +21 -21
  322. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.d.ts +15 -15
  323. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js +35 -35
  324. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts +95 -95
  325. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js +245 -245
  326. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.d.ts +136 -136
  327. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.js +88 -88
  328. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +89 -88
  329. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
  330. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +414 -409
  331. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
  332. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.d.ts +1 -1
  333. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.js +51 -51
  334. package/lib/browser/shell/tab-bars.d.ts +341 -341
  335. package/lib/browser/shell/tab-bars.js +1312 -1312
  336. package/lib/browser/shell/tab-bars.spec.d.ts +1 -1
  337. package/lib/browser/shell/tab-bars.spec.js +56 -56
  338. package/lib/browser/shell/theia-dock-panel.d.ts +59 -59
  339. package/lib/browser/shell/theia-dock-panel.js +226 -226
  340. package/lib/browser/shell/view-contribution.d.ts +43 -43
  341. package/lib/browser/shell/view-contribution.js +159 -159
  342. package/lib/browser/source-tree/index.d.ts +3 -3
  343. package/lib/browser/source-tree/index.js +21 -21
  344. package/lib/browser/source-tree/source-tree-widget.d.ts +21 -21
  345. package/lib/browser/source-tree/source-tree-widget.js +110 -110
  346. package/lib/browser/source-tree/source-tree.d.ts +36 -36
  347. package/lib/browser/source-tree/source-tree.js +129 -129
  348. package/lib/browser/source-tree/tree-source.d.ts +35 -35
  349. package/lib/browser/source-tree/tree-source.js +53 -53
  350. package/lib/browser/status-bar/index.d.ts +5 -5
  351. package/lib/browser/status-bar/index.js +31 -31
  352. package/lib/browser/status-bar/status-bar-types.d.ts +72 -72
  353. package/lib/browser/status-bar/status-bar-types.js +25 -25
  354. package/lib/browser/status-bar/status-bar-view-model.d.ts +35 -35
  355. package/lib/browser/status-bar/status-bar-view-model.js +207 -207
  356. package/lib/browser/status-bar/status-bar.d.ts +34 -34
  357. package/lib/browser/status-bar/status-bar.js +181 -181
  358. package/lib/browser/storage-service.d.ts +35 -35
  359. package/lib/browser/storage-service.js +122 -122
  360. package/lib/browser/storage-service.spec.d.ts +1 -1
  361. package/lib/browser/storage-service.spec.js +68 -68
  362. package/lib/browser/styling-service.d.ts +29 -28
  363. package/lib/browser/styling-service.d.ts.map +1 -1
  364. package/lib/browser/styling-service.js +86 -77
  365. package/lib/browser/styling-service.js.map +1 -1
  366. package/lib/browser/supported-encodings.d.ts +9 -9
  367. package/lib/browser/supported-encodings.js +263 -263
  368. package/lib/browser/test/jsdom.d.ts +8 -8
  369. package/lib/browser/test/jsdom.js +69 -69
  370. package/lib/browser/test/mock-connection-status-service.d.ts +5 -5
  371. package/lib/browser/test/mock-connection-status-service.js +32 -32
  372. package/lib/browser/test/mock-env-variables-server.d.ts +12 -12
  373. package/lib/browser/test/mock-env-variables-server.js +42 -42
  374. package/lib/browser/test/mock-opener-service.d.ts +8 -8
  375. package/lib/browser/test/mock-opener-service.js +35 -35
  376. package/lib/browser/test/mock-storage-service.d.ts +11 -11
  377. package/lib/browser/test/mock-storage-service.js +49 -49
  378. package/lib/browser/theming.d.ts +50 -50
  379. package/lib/browser/theming.js +203 -203
  380. package/lib/browser/tooltip-service.d.ts +34 -34
  381. package/lib/browser/tooltip-service.js +76 -76
  382. package/lib/browser/tree/fuzzy-search.d.ts +60 -60
  383. package/lib/browser/tree/fuzzy-search.js +75 -75
  384. package/lib/browser/tree/fuzzy-search.spec.d.ts +1 -1
  385. package/lib/browser/tree/fuzzy-search.spec.js +89 -89
  386. package/lib/browser/tree/index.d.ts +13 -13
  387. package/lib/browser/tree/index.js +31 -31
  388. package/lib/browser/tree/search-box-debounce.d.ts +33 -33
  389. package/lib/browser/tree/search-box-debounce.js +75 -75
  390. package/lib/browser/tree/search-box.d.ts +105 -105
  391. package/lib/browser/tree/search-box.js +265 -265
  392. package/lib/browser/tree/test/mock-selectable-tree-model.d.ts +14 -14
  393. package/lib/browser/tree/test/mock-selectable-tree-model.js +102 -102
  394. package/lib/browser/tree/test/mock-tree-model.d.ts +12 -12
  395. package/lib/browser/tree/test/mock-tree-model.js +129 -129
  396. package/lib/browser/tree/test/tree-test-container.d.ts +2 -2
  397. package/lib/browser/tree/test/tree-test-container.js +52 -52
  398. package/lib/browser/tree/tree-compression/compressed-tree-expansion-service.d.ts +8 -8
  399. package/lib/browser/tree/tree-compression/compressed-tree-expansion-service.js +59 -59
  400. package/lib/browser/tree/tree-compression/compressed-tree-model.d.ts +23 -23
  401. package/lib/browser/tree/tree-compression/compressed-tree-model.js +89 -89
  402. package/lib/browser/tree/tree-compression/compressed-tree-widget.d.ts +38 -38
  403. package/lib/browser/tree/tree-compression/compressed-tree-widget.js +187 -187
  404. package/lib/browser/tree/tree-compression/index.d.ts +4 -4
  405. package/lib/browser/tree/tree-compression/index.js +22 -22
  406. package/lib/browser/tree/tree-compression/tree-compression-service.d.ts +58 -58
  407. package/lib/browser/tree/tree-compression/tree-compression-service.js +98 -98
  408. package/lib/browser/tree/tree-consistency.spec.d.ts +1 -1
  409. package/lib/browser/tree/tree-consistency.spec.js +99 -99
  410. package/lib/browser/tree/tree-container.d.ts +51 -51
  411. package/lib/browser/tree/tree-container.js +115 -115
  412. package/lib/browser/tree/tree-container.spec.d.ts +1 -1
  413. package/lib/browser/tree/tree-container.spec.js +45 -45
  414. package/lib/browser/tree/tree-decorator.d.ts +143 -143
  415. package/lib/browser/tree/tree-decorator.js +115 -115
  416. package/lib/browser/tree/tree-decorator.spec.d.ts +1 -1
  417. package/lib/browser/tree/tree-decorator.spec.js +145 -145
  418. package/lib/browser/tree/tree-expansion.d.ts +65 -65
  419. package/lib/browser/tree/tree-expansion.js +124 -124
  420. package/lib/browser/tree/tree-expansion.spec.d.ts +1 -1
  421. package/lib/browser/tree/tree-expansion.spec.js +155 -155
  422. package/lib/browser/tree/tree-focus-service.d.ts +19 -19
  423. package/lib/browser/tree/tree-focus-service.js +53 -53
  424. package/lib/browser/tree/tree-iterator.d.ts +94 -94
  425. package/lib/browser/tree/tree-iterator.js +223 -223
  426. package/lib/browser/tree/tree-iterator.spec.d.ts +1 -1
  427. package/lib/browser/tree/tree-iterator.spec.js +150 -150
  428. package/lib/browser/tree/tree-label-provider.d.ts +8 -8
  429. package/lib/browser/tree/tree-label-provider.js +39 -39
  430. package/lib/browser/tree/tree-model.d.ts +202 -202
  431. package/lib/browser/tree/tree-model.js +395 -395
  432. package/lib/browser/tree/tree-navigation.d.ts +10 -10
  433. package/lib/browser/tree/tree-navigation.js +57 -57
  434. package/lib/browser/tree/tree-preference.d.ts +10 -10
  435. package/lib/browser/tree/tree-preference.js +46 -46
  436. package/lib/browser/tree/tree-search.d.ts +36 -36
  437. package/lib/browser/tree/tree-search.js +130 -130
  438. package/lib/browser/tree/tree-selectable.spec.d.ts +1 -1
  439. package/lib/browser/tree/tree-selectable.spec.js +146 -146
  440. package/lib/browser/tree/tree-selection-impl.d.ts +44 -44
  441. package/lib/browser/tree/tree-selection-impl.js +158 -158
  442. package/lib/browser/tree/tree-selection-state.d.ts +48 -48
  443. package/lib/browser/tree/tree-selection-state.js +227 -227
  444. package/lib/browser/tree/tree-selection-state.spec.d.ts +1 -1
  445. package/lib/browser/tree/tree-selection-state.spec.js +420 -420
  446. package/lib/browser/tree/tree-selection.d.ts +86 -86
  447. package/lib/browser/tree/tree-selection.js +86 -86
  448. package/lib/browser/tree/tree-view-welcome-widget.d.ts +45 -45
  449. package/lib/browser/tree/tree-view-welcome-widget.js +192 -192
  450. package/lib/browser/tree/tree-widget-selection.d.ts +11 -11
  451. package/lib/browser/tree/tree-widget-selection.js +46 -46
  452. package/lib/browser/tree/tree-widget.d.ts +559 -559
  453. package/lib/browser/tree/tree-widget.js +1352 -1352
  454. package/lib/browser/tree/tree.d.ts +180 -180
  455. package/lib/browser/tree/tree.js +288 -288
  456. package/lib/browser/tree/tree.spec.d.ts +1 -1
  457. package/lib/browser/tree/tree.spec.js +226 -226
  458. package/lib/browser/user-working-directory-provider.d.ts +23 -23
  459. package/lib/browser/user-working-directory-provider.js +76 -76
  460. package/lib/browser/view-container.d.ts +312 -312
  461. package/lib/browser/view-container.js +1458 -1458
  462. package/lib/browser/widget-decoration.d.ts +299 -299
  463. package/lib/browser/widget-decoration.js +140 -140
  464. package/lib/browser/widget-manager.d.ts +172 -172
  465. package/lib/browser/widget-manager.js +222 -222
  466. package/lib/browser/widget-manager.spec.d.ts +1 -1
  467. package/lib/browser/widget-manager.spec.js +91 -91
  468. package/lib/browser/widget-open-handler.d.ts +88 -88
  469. package/lib/browser/widget-open-handler.js +137 -137
  470. package/lib/browser/widgets/alert-message.d.ts +23 -23
  471. package/lib/browser/widgets/alert-message.js +38 -38
  472. package/lib/browser/widgets/enhanced-preview-widget.d.ts +6 -6
  473. package/lib/browser/widgets/enhanced-preview-widget.js +26 -26
  474. package/lib/browser/widgets/extractable-widget.d.ts +13 -13
  475. package/lib/browser/widgets/extractable-widget.js +26 -26
  476. package/lib/browser/widgets/index.d.ts +4 -4
  477. package/lib/browser/widgets/index.js +22 -22
  478. package/lib/browser/widgets/previewable-widget.d.ts +8 -8
  479. package/lib/browser/widgets/previewable-widget.js +30 -30
  480. package/lib/browser/widgets/react-renderer.d.ts +14 -14
  481. package/lib/browser/widgets/react-renderer.js +48 -48
  482. package/lib/browser/widgets/react-widget.d.ts +16 -16
  483. package/lib/browser/widgets/react-widget.js +46 -46
  484. package/lib/browser/widgets/select-component.d.ts +53 -53
  485. package/lib/browser/widgets/select-component.js +307 -307
  486. package/lib/browser/widgets/widget.d.ts +108 -108
  487. package/lib/browser/widgets/widget.js +367 -367
  488. package/lib/browser/window/browser-window-module.d.ts +3 -3
  489. package/lib/browser/window/browser-window-module.js +32 -32
  490. package/lib/browser/window/default-secondary-window-service.d.ts +25 -25
  491. package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
  492. package/lib/browser/window/default-secondary-window-service.js +187 -190
  493. package/lib/browser/window/default-secondary-window-service.js.map +1 -1
  494. package/lib/browser/window/default-window-service.d.ts +50 -49
  495. package/lib/browser/window/default-window-service.d.ts.map +1 -1
  496. package/lib/browser/window/default-window-service.js +167 -164
  497. package/lib/browser/window/default-window-service.js.map +1 -1
  498. package/lib/browser/window/default-window-service.spec.d.ts +1 -1
  499. package/lib/browser/window/default-window-service.spec.js +80 -80
  500. package/lib/browser/window/secondary-window-service.d.ts +20 -20
  501. package/lib/browser/window/secondary-window-service.js +19 -19
  502. package/lib/browser/window/test/mock-window-service.d.ts +11 -10
  503. package/lib/browser/window/test/mock-window-service.d.ts.map +1 -1
  504. package/lib/browser/window/test/mock-window-service.js +34 -33
  505. package/lib/browser/window/test/mock-window-service.js.map +1 -1
  506. package/lib/browser/window/window-service.d.ts +53 -45
  507. package/lib/browser/window/window-service.d.ts.map +1 -1
  508. package/lib/browser/window/window-service.js +22 -22
  509. package/lib/browser/window/window-service.js.map +1 -1
  510. package/lib/browser/window/window-title-service.d.ts +31 -31
  511. package/lib/browser/window/window-title-service.js +112 -112
  512. package/lib/browser/window/window-title-updater.d.ts +19 -19
  513. package/lib/browser/window/window-title-updater.js +99 -99
  514. package/lib/browser/window-contribution.d.ts +14 -14
  515. package/lib/browser/window-contribution.js +62 -62
  516. package/lib/browser-only/frontend-only-application-module.d.ts +4 -4
  517. package/lib/browser-only/frontend-only-application-module.js +114 -114
  518. package/lib/browser-only/i18n/i18n-frontend-only-module.d.ts +3 -3
  519. package/lib/browser-only/i18n/i18n-frontend-only-module.js +34 -34
  520. package/lib/browser-only/logger-frontend-only-module.d.ts +2 -2
  521. package/lib/browser-only/logger-frontend-only-module.js +60 -60
  522. package/lib/browser-only/messaging/frontend-only-service-connection-provider.d.ts +13 -13
  523. package/lib/browser-only/messaging/frontend-only-service-connection-provider.js +51 -51
  524. package/lib/browser-only/messaging/messaging-frontend-only-module.d.ts +2 -2
  525. package/lib/browser-only/messaging/messaging-frontend-only-module.js +47 -47
  526. package/lib/browser-only/preload/frontend-only-preload-module.d.ts +3 -3
  527. package/lib/browser-only/preload/frontend-only-preload-module.js +51 -51
  528. package/lib/common/accessibility.d.ts +16 -16
  529. package/lib/common/accessibility.js +17 -17
  530. package/lib/common/application-error.d.ts +20 -20
  531. package/lib/common/application-error.js +62 -62
  532. package/lib/common/application-error.spec.d.ts +1 -1
  533. package/lib/common/application-error.spec.js +26 -26
  534. package/lib/common/application-protocol.d.ts +20 -20
  535. package/lib/common/application-protocol.js +20 -20
  536. package/lib/common/array-utils.d.ts +55 -55
  537. package/lib/common/array-utils.js +118 -118
  538. package/lib/common/buffer.d.ts +43 -43
  539. package/lib/common/buffer.js +205 -205
  540. package/lib/common/cancellation.d.ts +24 -24
  541. package/lib/common/cancellation.js +142 -142
  542. package/lib/common/char-code.d.ts +401 -401
  543. package/lib/common/char-code.js +22 -22
  544. package/lib/common/collections.d.ts +29 -29
  545. package/lib/common/collections.js +121 -121
  546. package/lib/common/color.d.ts +71 -71
  547. package/lib/common/color.js +43 -43
  548. package/lib/common/command.d.ts +232 -232
  549. package/lib/common/command.js +353 -353
  550. package/lib/common/command.spec.d.ts +1 -1
  551. package/lib/common/command.spec.js +173 -173
  552. package/lib/common/contribution-filter/contribution-filter-registry.d.ts +17 -17
  553. package/lib/common/contribution-filter/contribution-filter-registry.js +77 -77
  554. package/lib/common/contribution-filter/contribution-filter.d.ts +41 -41
  555. package/lib/common/contribution-filter/contribution-filter.js +20 -20
  556. package/lib/common/contribution-filter/filter.d.ts +6 -6
  557. package/lib/common/contribution-filter/filter.js +19 -19
  558. package/lib/common/contribution-filter/index.d.ts +3 -3
  559. package/lib/common/contribution-filter/index.js +21 -21
  560. package/lib/common/contribution-provider.d.ts +20 -20
  561. package/lib/common/contribution-provider.js +82 -82
  562. package/lib/common/disposable.d.ts +80 -80
  563. package/lib/common/disposable.js +173 -173
  564. package/lib/common/disposable.spec.d.ts +1 -1
  565. package/lib/common/disposable.spec.js +80 -80
  566. package/lib/common/encoding-service.d.ts +38 -38
  567. package/lib/common/encoding-service.js +302 -302
  568. package/lib/common/encodings.d.ts +7 -7
  569. package/lib/common/encodings.js +25 -25
  570. package/lib/common/env-variables/env-variables-protocol.d.ts +20 -20
  571. package/lib/common/env-variables/env-variables-protocol.js +20 -20
  572. package/lib/common/env-variables/index.d.ts +1 -1
  573. package/lib/common/env-variables/index.js +19 -19
  574. package/lib/common/event.d.ts +115 -115
  575. package/lib/common/event.js +385 -385
  576. package/lib/common/event.spec.d.ts +1 -1
  577. package/lib/common/event.spec.js +29 -29
  578. package/lib/common/file-uri.d.ts +14 -14
  579. package/lib/common/file-uri.js +62 -62
  580. package/lib/common/frontend-application-state.d.ts +15 -15
  581. package/lib/common/frontend-application-state.js +33 -33
  582. package/lib/common/glob.d.ts +50 -50
  583. package/lib/common/glob.js +591 -591
  584. package/lib/common/hash.d.ts +7 -7
  585. package/lib/common/hash.js +84 -84
  586. package/lib/common/i18n/localization-server.d.ts +6 -6
  587. package/lib/common/i18n/localization-server.js +20 -20
  588. package/lib/common/i18n/localization.d.ts +34 -34
  589. package/lib/common/i18n/localization.js +59 -59
  590. package/lib/common/index.d.ts +35 -35
  591. package/lib/common/index.js +56 -56
  592. package/lib/common/json-schema.d.ts +72 -72
  593. package/lib/common/json-schema.js +17 -17
  594. package/lib/common/key-store.d.ts +12 -12
  595. package/lib/common/key-store.js +20 -20
  596. package/lib/common/keybinding.d.ts +75 -75
  597. package/lib/common/keybinding.js +113 -113
  598. package/lib/common/keyboard/keyboard-layout-provider.d.ts +26 -26
  599. package/lib/common/keyboard/keyboard-layout-provider.js +22 -22
  600. package/lib/common/keys.d.ts +253 -253
  601. package/lib/common/keys.js +634 -634
  602. package/lib/common/label-protocol.d.ts +13 -13
  603. package/lib/common/label-protocol.js +17 -17
  604. package/lib/common/logger-protocol.d.ts +41 -41
  605. package/lib/common/logger-protocol.js +100 -100
  606. package/lib/common/logger-watcher.d.ts +9 -9
  607. package/lib/common/logger-watcher.js +49 -49
  608. package/lib/common/logger.d.ts +207 -207
  609. package/lib/common/logger.js +204 -204
  610. package/lib/common/logger.spec.d.ts +1 -1
  611. package/lib/common/logger.spec.js +41 -41
  612. package/lib/common/lsp-types.d.ts +9 -9
  613. package/lib/common/lsp-types.js +30 -30
  614. package/lib/common/markdown-rendering/icon-utilities.d.ts +7 -7
  615. package/lib/common/markdown-rendering/icon-utilities.js +32 -32
  616. package/lib/common/markdown-rendering/index.d.ts +2 -2
  617. package/lib/common/markdown-rendering/index.js +20 -20
  618. package/lib/common/markdown-rendering/markdown-string.d.ts +46 -46
  619. package/lib/common/markdown-rendering/markdown-string.js +126 -126
  620. package/lib/common/menu/action-menu-node.d.ts +19 -19
  621. package/lib/common/menu/action-menu-node.js +56 -56
  622. package/lib/common/menu/composite-menu-node.d.ts +46 -46
  623. package/lib/common/menu/composite-menu-node.js +93 -93
  624. package/lib/common/menu/composite-menu-node.spec.d.ts +1 -1
  625. package/lib/common/menu/composite-menu-node.spec.js +67 -67
  626. package/lib/common/menu/index.d.ts +5 -5
  627. package/lib/common/menu/index.js +23 -23
  628. package/lib/common/menu/menu-adapter.d.ts +35 -35
  629. package/lib/common/menu/menu-adapter.js +92 -92
  630. package/lib/common/menu/menu-model-registry.d.ts +145 -145
  631. package/lib/common/menu/menu-model-registry.js +275 -275
  632. package/lib/common/menu/menu-types.d.ts +148 -148
  633. package/lib/common/menu/menu-types.js +93 -93
  634. package/lib/common/menu/menu.spec.d.ts +1 -1
  635. package/lib/common/menu/menu.spec.js +96 -96
  636. package/lib/common/message-rpc/channel.d.ts +123 -123
  637. package/lib/common/message-rpc/channel.js +230 -230
  638. package/lib/common/message-rpc/channel.spec.d.ts +8 -8
  639. package/lib/common/message-rpc/channel.spec.js +79 -79
  640. package/lib/common/message-rpc/index.d.ts +3 -3
  641. package/lib/common/message-rpc/index.js +24 -24
  642. package/lib/common/message-rpc/message-buffer.d.ts +51 -51
  643. package/lib/common/message-rpc/message-buffer.js +59 -59
  644. package/lib/common/message-rpc/msg-pack-extension-manager.d.ts +22 -22
  645. package/lib/common/message-rpc/msg-pack-extension-manager.js +57 -57
  646. package/lib/common/message-rpc/rpc-message-encoder.d.ts +103 -103
  647. package/lib/common/message-rpc/rpc-message-encoder.js +113 -113
  648. package/lib/common/message-rpc/rpc-message-encoder.spec.d.ts +1 -1
  649. package/lib/common/message-rpc/rpc-message-encoder.spec.js +58 -58
  650. package/lib/common/message-rpc/rpc-protocol.d.ts +67 -67
  651. package/lib/common/message-rpc/rpc-protocol.js +209 -209
  652. package/lib/common/message-rpc/uint8-array-message-buffer.d.ts +52 -52
  653. package/lib/common/message-rpc/uint8-array-message-buffer.js +174 -174
  654. package/lib/common/message-rpc/uint8-array-message-buffer.spec.d.ts +1 -1
  655. package/lib/common/message-rpc/uint8-array-message-buffer.spec.js +38 -38
  656. package/lib/common/message-service-protocol.d.ts +110 -110
  657. package/lib/common/message-service-protocol.js +73 -73
  658. package/lib/common/message-service.d.ts +134 -134
  659. package/lib/common/message-service.js +151 -151
  660. package/lib/common/messaging/connection-error-handler.d.ts +28 -28
  661. package/lib/common/messaging/connection-error-handler.js +47 -47
  662. package/lib/common/messaging/connection-management.d.ts +24 -24
  663. package/lib/common/messaging/connection-management.js +37 -37
  664. package/lib/common/messaging/handler.d.ts +7 -7
  665. package/lib/common/messaging/handler.js +20 -20
  666. package/lib/common/messaging/index.d.ts +3 -3
  667. package/lib/common/messaging/index.js +21 -21
  668. package/lib/common/messaging/proxy-factory.d.ts +180 -180
  669. package/lib/common/messaging/proxy-factory.js +280 -280
  670. package/lib/common/messaging/proxy-factory.spec.d.ts +1 -1
  671. package/lib/common/messaging/proxy-factory.spec.js +99 -99
  672. package/lib/common/messaging/socket-write-buffer.d.ts +10 -10
  673. package/lib/common/messaging/socket-write-buffer.js +49 -49
  674. package/lib/common/messaging/web-socket-channel.d.ts +19 -19
  675. package/lib/common/messaging/web-socket-channel.js +64 -64
  676. package/lib/common/nls.d.ts +15 -15
  677. package/lib/common/nls.js +135 -133
  678. package/lib/common/nls.js.map +1 -1
  679. package/lib/common/numbers.d.ts +5 -5
  680. package/lib/common/numbers.js +23 -23
  681. package/lib/common/objects.d.ts +8 -8
  682. package/lib/common/objects.js +118 -118
  683. package/lib/common/objects.spec.d.ts +1 -1
  684. package/lib/common/objects.spec.js +101 -101
  685. package/lib/common/os.d.ts +31 -31
  686. package/lib/common/os.js +73 -73
  687. package/lib/common/path.d.ts +93 -93
  688. package/lib/common/path.js +307 -307
  689. package/lib/common/path.spec.d.ts +1 -1
  690. package/lib/common/path.spec.js +350 -350
  691. package/lib/common/paths.d.ts +24 -24
  692. package/lib/common/paths.js +226 -226
  693. package/lib/common/performance/index.d.ts +3 -3
  694. package/lib/common/performance/index.js +21 -21
  695. package/lib/common/performance/measurement-protocol.d.ts +64 -64
  696. package/lib/common/performance/measurement-protocol.js +70 -70
  697. package/lib/common/performance/measurement.d.ts +111 -111
  698. package/lib/common/performance/measurement.js +17 -17
  699. package/lib/common/performance/stopwatch.d.ts +75 -75
  700. package/lib/common/performance/stopwatch.js +148 -148
  701. package/lib/common/preferences/preference-schema.d.ts +52 -52
  702. package/lib/common/preferences/preference-schema.js +58 -58
  703. package/lib/common/preferences/preference-scope.d.ts +19 -19
  704. package/lib/common/preferences/preference-scope.js +71 -71
  705. package/lib/common/preferences/preference-scope.spec.d.ts +1 -1
  706. package/lib/common/preferences/preference-scope.spec.js +44 -44
  707. package/lib/common/prioritizeable.d.ts +16 -16
  708. package/lib/common/prioritizeable.js +55 -55
  709. package/lib/common/progress-service-protocol.d.ts +13 -13
  710. package/lib/common/progress-service-protocol.js +19 -19
  711. package/lib/common/progress-service.d.ts +13 -13
  712. package/lib/common/progress-service.js +88 -88
  713. package/lib/common/promise-util.d.ts +51 -51
  714. package/lib/common/promise-util.js +132 -132
  715. package/lib/common/promise-util.spec.d.ts +1 -1
  716. package/lib/common/promise-util.spec.js +80 -80
  717. package/lib/common/quick-pick-service.d.ts +270 -269
  718. package/lib/common/quick-pick-service.d.ts.map +1 -1
  719. package/lib/common/quick-pick-service.js +133 -133
  720. package/lib/common/quick-pick-service.js.map +1 -1
  721. package/lib/common/reference.d.ts +95 -95
  722. package/lib/common/reference.js +207 -207
  723. package/lib/common/reference.spec.d.ts +1 -1
  724. package/lib/common/reference.spec.js +125 -125
  725. package/lib/common/resource.d.ts +207 -207
  726. package/lib/common/resource.js +322 -322
  727. package/lib/common/selection-command-handler.d.ts +24 -24
  728. package/lib/common/selection-command-handler.js +83 -83
  729. package/lib/common/selection-service.d.ts +18 -18
  730. package/lib/common/selection-service.js +43 -43
  731. package/lib/common/selection-service.spec.d.ts +1 -1
  732. package/lib/common/selection-service.spec.js +38 -38
  733. package/lib/common/selection.d.ts +9 -9
  734. package/lib/common/selection.js +47 -47
  735. package/lib/common/severity.d.ts +15 -15
  736. package/lib/common/severity.js +113 -113
  737. package/lib/common/stream.d.ts +176 -176
  738. package/lib/common/stream.js +474 -474
  739. package/lib/common/strings.d.ts +24 -24
  740. package/lib/common/strings.js +215 -215
  741. package/lib/common/telemetry.d.ts +19 -19
  742. package/lib/common/telemetry.js +24 -24
  743. package/lib/common/ternary-search-tree.d.ts +50 -50
  744. package/lib/common/ternary-search-tree.js +381 -381
  745. package/lib/common/test/expect.d.ts +2 -2
  746. package/lib/common/test/expect.js +34 -34
  747. package/lib/common/test/mock-logger.d.ts +27 -27
  748. package/lib/common/test/mock-logger.js +99 -99
  749. package/lib/common/test/mock-menu.d.ts +7 -7
  750. package/lib/common/test/mock-menu.js +34 -34
  751. package/lib/common/test/mock-resource-provider.d.ts +6 -6
  752. package/lib/common/test/mock-resource-provider.js +36 -36
  753. package/lib/common/theme.d.ts +40 -40
  754. package/lib/common/theme.js +22 -22
  755. package/lib/common/types.d.ts +58 -58
  756. package/lib/common/types.js +126 -126
  757. package/lib/common/types.spec.d.ts +1 -1
  758. package/lib/common/types.spec.js +73 -73
  759. package/lib/common/uri-command-handler.d.ts +53 -53
  760. package/lib/common/uri-command-handler.js +99 -99
  761. package/lib/common/uri-command-handler.spec.d.ts +1 -1
  762. package/lib/common/uri-command-handler.spec.js +80 -80
  763. package/lib/common/uri.d.ts +87 -87
  764. package/lib/common/uri.js +236 -236
  765. package/lib/common/uri.spec.d.ts +1 -1
  766. package/lib/common/uri.spec.js +230 -230
  767. package/lib/common/uuid.d.ts +8 -8
  768. package/lib/common/uuid.js +44 -44
  769. package/lib/common/version.d.ts +1 -1
  770. package/lib/common/version.js +19 -19
  771. package/lib/common/view-column.d.ts +17 -17
  772. package/lib/common/view-column.js +36 -36
  773. package/lib/common/window.d.ts +16 -16
  774. package/lib/common/window.js +22 -22
  775. package/lib/electron-browser/electron-clipboard-service.d.ts +5 -5
  776. package/lib/electron-browser/electron-clipboard-service.js +33 -33
  777. package/lib/electron-browser/keyboard/electron-keyboard-layout-change-notifier.d.ts +11 -11
  778. package/lib/electron-browser/keyboard/electron-keyboard-layout-change-notifier.js +46 -46
  779. package/lib/electron-browser/keyboard/electron-keyboard-module.d.ts +3 -3
  780. package/lib/electron-browser/keyboard/electron-keyboard-module.js +26 -26
  781. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts +30 -30
  782. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  783. package/lib/electron-browser/menu/electron-context-menu-renderer.js +128 -126
  784. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  785. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +59 -59
  786. package/lib/electron-browser/menu/electron-main-menu-factory.js +274 -274
  787. package/lib/electron-browser/menu/electron-menu-contribution.d.ts +78 -78
  788. package/lib/electron-browser/menu/electron-menu-contribution.js +471 -471
  789. package/lib/electron-browser/menu/electron-menu-module.d.ts +3 -3
  790. package/lib/electron-browser/menu/electron-menu-module.js +39 -39
  791. package/lib/electron-browser/messaging/electron-frontend-id-provider.d.ts +4 -4
  792. package/lib/electron-browser/messaging/electron-frontend-id-provider.js +29 -29
  793. package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts +23 -23
  794. package/lib/electron-browser/messaging/electron-ipc-connection-source.js +59 -59
  795. package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts +6 -6
  796. package/lib/electron-browser/messaging/electron-local-ws-connection-source.js +49 -49
  797. package/lib/electron-browser/messaging/electron-messaging-frontend-module.d.ts +2 -2
  798. package/lib/electron-browser/messaging/electron-messaging-frontend-module.js +75 -75
  799. package/lib/electron-browser/messaging/electron-ws-connection-source.d.ts +11 -11
  800. package/lib/electron-browser/messaging/electron-ws-connection-source.js +42 -42
  801. package/lib/electron-browser/preload.d.ts +1 -1
  802. package/lib/electron-browser/preload.js +201 -201
  803. package/lib/electron-browser/preload.js.map +1 -1
  804. package/lib/electron-browser/request/electron-browser-request-module.d.ts +18 -18
  805. package/lib/electron-browser/request/electron-browser-request-module.js +26 -26
  806. package/lib/electron-browser/token/electron-token-frontend-module.d.ts +3 -3
  807. package/lib/electron-browser/token/electron-token-frontend-module.js +22 -22
  808. package/lib/electron-browser/window/electron-frontend-application-state.d.ts +4 -4
  809. package/lib/electron-browser/window/electron-frontend-application-state.js +31 -31
  810. package/lib/electron-browser/window/electron-secondary-window-service.d.ts +7 -7
  811. package/lib/electron-browser/window/electron-secondary-window-service.d.ts.map +1 -1
  812. package/lib/electron-browser/window/electron-secondary-window-service.js +38 -42
  813. package/lib/electron-browser/window/electron-secondary-window-service.js.map +1 -1
  814. package/lib/electron-browser/window/electron-window-module.d.ts +3 -3
  815. package/lib/electron-browser/window/electron-window-module.js +39 -39
  816. package/lib/electron-browser/window/electron-window-preferences.d.ts +18 -18
  817. package/lib/electron-browser/window/electron-window-preferences.js +72 -72
  818. package/lib/electron-browser/window/electron-window-service.d.ts +31 -29
  819. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  820. package/lib/electron-browser/window/electron-window-service.js +116 -106
  821. package/lib/electron-browser/window/electron-window-service.js.map +1 -1
  822. package/lib/electron-common/electron-api.d.ts +104 -104
  823. package/lib/electron-common/electron-api.d.ts.map +1 -1
  824. package/lib/electron-common/electron-api.js +56 -56
  825. package/lib/electron-common/electron-main-window-service.d.ts +7 -7
  826. package/lib/electron-common/electron-main-window-service.js +20 -20
  827. package/lib/electron-common/electron-token.d.ts +10 -10
  828. package/lib/electron-common/electron-token.js +27 -27
  829. package/lib/electron-main/electron-api-main.d.ts +22 -22
  830. package/lib/electron-main/electron-api-main.d.ts.map +1 -1
  831. package/lib/electron-main/electron-api-main.js +294 -286
  832. package/lib/electron-main/electron-api-main.js.map +1 -1
  833. package/lib/electron-main/electron-main-application-module.d.ts +3 -3
  834. package/lib/electron-main/electron-main-application-module.js +56 -56
  835. package/lib/electron-main/electron-main-application.d.ts +159 -159
  836. package/lib/electron-main/electron-main-application.js +603 -603
  837. package/lib/electron-main/electron-main-constants.d.ts +6 -6
  838. package/lib/electron-main/electron-main-constants.js +19 -19
  839. package/lib/electron-main/electron-main-window-service-impl.d.ts +8 -8
  840. package/lib/electron-main/electron-main-window-service-impl.js +46 -46
  841. package/lib/electron-main/electron-security-token-service.d.ts +5 -5
  842. package/lib/electron-main/electron-security-token-service.js +41 -41
  843. package/lib/electron-main/event-utils.d.ts +8 -8
  844. package/lib/electron-main/event-utils.js +33 -33
  845. package/lib/electron-main/messaging/electron-connection-handler.d.ts +5 -5
  846. package/lib/electron-main/messaging/electron-connection-handler.js +23 -23
  847. package/lib/electron-main/messaging/electron-messaging-contribution.d.ts +41 -41
  848. package/lib/electron-main/messaging/electron-messaging-contribution.js +142 -142
  849. package/lib/electron-main/messaging/electron-messaging-service.d.ts +17 -17
  850. package/lib/electron-main/messaging/electron-messaging-service.js +22 -22
  851. package/lib/electron-main/theia-electron-window.d.ts +53 -53
  852. package/lib/electron-main/theia-electron-window.js +186 -186
  853. package/lib/electron-node/hosting/electron-backend-hosting-module.d.ts +3 -3
  854. package/lib/electron-node/hosting/electron-backend-hosting-module.js +24 -24
  855. package/lib/electron-node/hosting/electron-ws-origin-validator.d.ts +8 -8
  856. package/lib/electron-node/hosting/electron-ws-origin-validator.js +40 -40
  857. package/lib/electron-node/keyboard/electron-backend-keyboard-module.d.ts +3 -3
  858. package/lib/electron-node/keyboard/electron-backend-keyboard-module.js +26 -26
  859. package/lib/electron-node/keyboard/electron-keyboard-layout-provider.d.ts +5 -5
  860. package/lib/electron-node/keyboard/electron-keyboard-layout-provider.js +36 -36
  861. package/lib/electron-node/request/electron-backend-request-module.d.ts +18 -18
  862. package/lib/electron-node/request/electron-backend-request-module.js +23 -23
  863. package/lib/electron-node/request/electron-backend-request-service.d.ts +22 -22
  864. package/lib/electron-node/request/electron-backend-request-service.js +81 -81
  865. package/lib/electron-node/token/electron-token-backend-contribution.d.ts +15 -15
  866. package/lib/electron-node/token/electron-token-backend-contribution.js +50 -50
  867. package/lib/electron-node/token/electron-token-backend-module.d.ts +3 -3
  868. package/lib/electron-node/token/electron-token-backend-module.js +28 -28
  869. package/lib/electron-node/token/electron-token-validator.d.ts +29 -29
  870. package/lib/electron-node/token/electron-token-validator.js +95 -95
  871. package/lib/node/application-server.d.ts +10 -10
  872. package/lib/node/application-server.js +55 -55
  873. package/lib/node/backend-application-config-provider.d.ts +7 -7
  874. package/lib/node/backend-application-config-provider.js +45 -45
  875. package/lib/node/backend-application-config-provider.spec.d.ts +1 -1
  876. package/lib/node/backend-application-config-provider.spec.js +28 -28
  877. package/lib/node/backend-application-module.d.ts +2 -2
  878. package/lib/node/backend-application-module.js +108 -108
  879. package/lib/node/backend-application.d.ts +108 -108
  880. package/lib/node/backend-application.js +290 -290
  881. package/lib/node/backend-remote-service.d.ts +3 -3
  882. package/lib/node/backend-remote-service.js +29 -29
  883. package/lib/node/cli.d.ts +17 -17
  884. package/lib/node/cli.js +59 -59
  885. package/lib/node/cli.spec.d.ts +1 -1
  886. package/lib/node/cli.spec.js +89 -89
  887. package/lib/node/console-logger-server.d.ts +15 -15
  888. package/lib/node/console-logger-server.js +82 -82
  889. package/lib/node/console-logger-server.spec.d.ts +1 -1
  890. package/lib/node/console-logger-server.spec.js +61 -61
  891. package/lib/node/debug.d.ts +1 -1
  892. package/lib/node/debug.js +28 -28
  893. package/lib/node/dynamic-require.d.ts +7 -7
  894. package/lib/node/dynamic-require.js +56 -56
  895. package/lib/node/env-variables/env-variables-server.d.ts +23 -23
  896. package/lib/node/env-variables/env-variables-server.js +117 -117
  897. package/lib/node/env-variables/index.d.ts +1 -1
  898. package/lib/node/env-variables/index.js +19 -19
  899. package/lib/node/environment-utils.d.ts +21 -21
  900. package/lib/node/environment-utils.js +72 -72
  901. package/lib/node/environment-utils.spec.d.ts +1 -1
  902. package/lib/node/environment-utils.spec.js +77 -77
  903. package/lib/node/file-uri.spec.d.ts +1 -1
  904. package/lib/node/file-uri.spec.js +66 -66
  905. package/lib/node/filesystem-locking.d.ts +23 -23
  906. package/lib/node/filesystem-locking.js +65 -65
  907. package/lib/node/hosting/backend-application-hosts.d.ts +23 -23
  908. package/lib/node/hosting/backend-application-hosts.js +69 -69
  909. package/lib/node/hosting/backend-hosting-module.d.ts +3 -3
  910. package/lib/node/hosting/backend-hosting-module.js +26 -26
  911. package/lib/node/hosting/ws-origin-validator.d.ts +8 -8
  912. package/lib/node/hosting/ws-origin-validator.js +39 -39
  913. package/lib/node/i18n/i18n-backend-module.d.ts +3 -3
  914. package/lib/node/i18n/i18n-backend-module.js +38 -38
  915. package/lib/node/i18n/localization-contribution.d.ts +18 -18
  916. package/lib/node/i18n/localization-contribution.js +108 -108
  917. package/lib/node/i18n/localization-provider.d.ts +23 -23
  918. package/lib/node/i18n/localization-provider.js +109 -109
  919. package/lib/node/i18n/localization-server.d.ts +14 -14
  920. package/lib/node/i18n/localization-server.js +54 -54
  921. package/lib/node/i18n/theia-localization-contribution.d.ts +4 -4
  922. package/lib/node/i18n/theia-localization-contribution.js +40 -40
  923. package/lib/node/index.d.ts +6 -6
  924. package/lib/node/index.js +26 -26
  925. package/lib/node/key-store-server.d.ts +27 -27
  926. package/lib/node/key-store-server.js +145 -145
  927. package/lib/node/logger-backend-module.d.ts +9 -9
  928. package/lib/node/logger-backend-module.js +78 -78
  929. package/lib/node/logger-cli-contribution.d.ts +33 -33
  930. package/lib/node/logger-cli-contribution.js +147 -147
  931. package/lib/node/logger-cli-contribution.spec.d.ts +1 -1
  932. package/lib/node/logger-cli-contribution.spec.js +207 -207
  933. package/lib/node/main.d.ts +7 -7
  934. package/lib/node/main.js +29 -29
  935. package/lib/node/messaging/binary-message-pipe.d.ts +44 -44
  936. package/lib/node/messaging/binary-message-pipe.js +151 -151
  937. package/lib/node/messaging/connection-container-module.d.ts +53 -53
  938. package/lib/node/messaging/connection-container-module.js +81 -81
  939. package/lib/node/messaging/default-messaging-service.d.ts +28 -28
  940. package/lib/node/messaging/default-messaging-service.js +131 -131
  941. package/lib/node/messaging/frontend-connection-service.d.ts +6 -6
  942. package/lib/node/messaging/frontend-connection-service.js +18 -18
  943. package/lib/node/messaging/index.d.ts +3 -3
  944. package/lib/node/messaging/index.js +21 -21
  945. package/lib/node/messaging/ipc-bootstrap.d.ts +1 -1
  946. package/lib/node/messaging/ipc-bootstrap.js +24 -24
  947. package/lib/node/messaging/ipc-channel.d.ts +17 -17
  948. package/lib/node/messaging/ipc-channel.js +69 -69
  949. package/lib/node/messaging/ipc-connection-provider.d.ts +21 -21
  950. package/lib/node/messaging/ipc-connection-provider.js +92 -92
  951. package/lib/node/messaging/ipc-protocol.d.ts +19 -19
  952. package/lib/node/messaging/ipc-protocol.js +68 -68
  953. package/lib/node/messaging/messaging-backend-module.d.ts +2 -2
  954. package/lib/node/messaging/messaging-backend-module.js +52 -52
  955. package/lib/node/messaging/messaging-listeners.d.ts +27 -27
  956. package/lib/node/messaging/messaging-listeners.js +45 -45
  957. package/lib/node/messaging/messaging-service.d.ts +28 -28
  958. package/lib/node/messaging/messaging-service.js +24 -24
  959. package/lib/node/messaging/test/test-web-socket-channel.d.ts +12 -12
  960. package/lib/node/messaging/test/test-web-socket-channel.js +54 -54
  961. package/lib/node/messaging/websocket-endpoint.d.ts +20 -20
  962. package/lib/node/messaging/websocket-endpoint.js +80 -80
  963. package/lib/node/messaging/websocket-frontend-connection-service.d.ts +30 -30
  964. package/lib/node/messaging/websocket-frontend-connection-service.js +169 -169
  965. package/lib/node/os-backend-provider.d.ts +4 -4
  966. package/lib/node/os-backend-provider.js +30 -30
  967. package/lib/node/performance/index.d.ts +2 -2
  968. package/lib/node/performance/index.js +20 -20
  969. package/lib/node/performance/measurement-backend-bindings.d.ts +19 -19
  970. package/lib/node/performance/measurement-backend-bindings.js +30 -30
  971. package/lib/node/performance/node-stopwatch.d.ts +20 -20
  972. package/lib/node/performance/node-stopwatch.js +43 -43
  973. package/lib/node/process-utils.d.ts +13 -13
  974. package/lib/node/process-utils.js +105 -105
  975. package/lib/node/process-utils.spec.d.ts +1 -1
  976. package/lib/node/process-utils.spec.js +44 -44
  977. package/lib/node/request/backend-request-facade.d.ts +22 -22
  978. package/lib/node/request/backend-request-facade.js +41 -41
  979. package/lib/node/request/backend-request-module.d.ts +18 -18
  980. package/lib/node/request/backend-request-module.js +24 -24
  981. package/lib/node/request/proxy-cli-contribution.d.ts +27 -27
  982. package/lib/node/request/proxy-cli-contribution.js +64 -64
  983. package/lib/node/ws-request-validators.d.ts +25 -25
  984. package/lib/node/ws-request-validators.js +52 -52
  985. package/package.json +6 -6
  986. package/shared/ajv/index.d.ts +2 -2
  987. package/shared/markdown-it.d.ts +2 -2
  988. package/shared/markdown-it.js +1 -1
  989. package/shared/reflect-metadata/index.d.ts +1 -1
  990. package/shared/reflect-metadata/index.js +1 -1
  991. package/shared/vscode-languageserver-types/index.d.ts +1 -1
  992. package/src/browser/about-dialog.tsx +137 -137
  993. package/src/browser/authentication-service.ts +456 -456
  994. package/src/browser/breadcrumbs/breadcrumb-popup-container.ts +101 -101
  995. package/src/browser/breadcrumbs/breadcrumb-renderer.tsx +41 -41
  996. package/src/browser/breadcrumbs/breadcrumbs-constants.ts +79 -79
  997. package/src/browser/breadcrumbs/breadcrumbs-renderer.tsx +185 -185
  998. package/src/browser/breadcrumbs/breadcrumbs-service.ts +108 -108
  999. package/src/browser/breadcrumbs/index.ts +21 -21
  1000. package/src/browser/browser-clipboard-service.ts +122 -122
  1001. package/src/browser/browser.ts +225 -225
  1002. package/src/browser/clipboard-service.ts +23 -23
  1003. package/src/browser/color-application-contribution.ts +110 -101
  1004. package/src/browser/color-registry.ts +60 -60
  1005. package/src/browser/command-open-handler.ts +54 -54
  1006. package/src/browser/common-frontend-contribution.ts +2569 -2526
  1007. package/src/browser/common-styling-participants.ts +361 -361
  1008. package/src/browser/connection-status-service.spec.ts +200 -200
  1009. package/src/browser/connection-status-service.ts +216 -216
  1010. package/src/browser/context-key-service.ts +142 -142
  1011. package/src/browser/context-menu-renderer.ts +124 -124
  1012. package/src/browser/core-preferences.ts +334 -334
  1013. package/src/browser/credentials-service.ts +106 -106
  1014. package/src/browser/decoration-style.ts +65 -65
  1015. package/src/browser/decorations-service.ts +209 -209
  1016. package/src/browser/dialogs/react-dialog.tsx +56 -56
  1017. package/src/browser/dialogs.ts +534 -534
  1018. package/src/browser/diff-uris.ts +117 -117
  1019. package/src/browser/encoding-registry.ts +97 -97
  1020. package/src/browser/endpoint.spec.ts +148 -148
  1021. package/src/browser/endpoint.ts +136 -136
  1022. package/src/browser/external-uri-service.ts +79 -79
  1023. package/src/browser/file-icons-js.d.ts +20 -20
  1024. package/src/browser/frontend-application-bindings.ts +62 -62
  1025. package/src/browser/frontend-application-config-provider.spec.ts +45 -45
  1026. package/src/browser/frontend-application-config-provider.ts +50 -50
  1027. package/src/browser/frontend-application-contribution.ts +110 -110
  1028. package/src/browser/frontend-application-module.ts +460 -460
  1029. package/src/browser/frontend-application-state.ts +74 -74
  1030. package/src/browser/frontend-application.ts +326 -326
  1031. package/src/browser/hover-service.ts +218 -218
  1032. package/src/browser/http-open-handler.ts +47 -47
  1033. package/src/browser/i18n/i18n-frontend-module.ts +27 -27
  1034. package/src/browser/i18n/language-quick-pick-service.ts +130 -130
  1035. package/src/browser/icon-registry.ts +87 -87
  1036. package/src/browser/icon-theme-contribution.ts +64 -64
  1037. package/src/browser/icon-theme-service.ts +217 -217
  1038. package/src/browser/icons/CollapseAll.svg +7 -7
  1039. package/src/browser/icons/CollapseAll_inverse.svg +7 -7
  1040. package/src/browser/icons/Refresh.svg +7 -7
  1041. package/src/browser/icons/Refresh_inverse.svg +7 -7
  1042. package/src/browser/icons/add-inverse.svg +4 -4
  1043. package/src/browser/icons/add.svg +4 -4
  1044. package/src/browser/icons/arrow-down-bright.svg +6 -6
  1045. package/src/browser/icons/arrow-down-dark.svg +6 -6
  1046. package/src/browser/icons/arrow-up-bright.svg +6 -6
  1047. package/src/browser/icons/arrow-up-dark.svg +6 -6
  1048. package/src/browser/icons/case-sensitive-dark.svg +16 -16
  1049. package/src/browser/icons/case-sensitive.svg +16 -16
  1050. package/src/browser/icons/chevron-right-dark.svg +5 -5
  1051. package/src/browser/icons/chevron-right-light.svg +6 -6
  1052. package/src/browser/icons/circle-bright.svg +7 -7
  1053. package/src/browser/icons/circle-dark.svg +7 -7
  1054. package/src/browser/icons/clear-search-results-dark.svg +7 -7
  1055. package/src/browser/icons/clear-search-results.svg +7 -7
  1056. package/src/browser/icons/close-all-bright.svg +7 -7
  1057. package/src/browser/icons/close-all-dark.svg +7 -7
  1058. package/src/browser/icons/close-bright.svg +7 -7
  1059. package/src/browser/icons/close-dark.svg +7 -7
  1060. package/src/browser/icons/collapse.svg +4 -4
  1061. package/src/browser/icons/edit-json-dark.svg +6 -6
  1062. package/src/browser/icons/edit-json.svg +6 -6
  1063. package/src/browser/icons/expand.svg +4 -4
  1064. package/src/browser/icons/loading-dark.svg +6 -6
  1065. package/src/browser/icons/loading-light.svg +6 -6
  1066. package/src/browser/icons/open-change-bright.svg +3 -3
  1067. package/src/browser/icons/open-change-dark.svg +4 -4
  1068. package/src/browser/icons/open-file-bright.svg +4 -4
  1069. package/src/browser/icons/open-file-dark.svg +4 -4
  1070. package/src/browser/icons/preview-bright.svg +3 -3
  1071. package/src/browser/icons/preview-dark.svg +3 -3
  1072. package/src/browser/icons/regex-dark.svg +10 -10
  1073. package/src/browser/icons/regex.svg +10 -10
  1074. package/src/browser/icons/remove-all-inverse.svg +4 -4
  1075. package/src/browser/icons/remove-all.svg +4 -4
  1076. package/src/browser/icons/replace-all-inverse.svg +13 -13
  1077. package/src/browser/icons/replace-all.svg +13 -13
  1078. package/src/browser/icons/replace-inverse.svg +15 -15
  1079. package/src/browser/icons/replace.svg +15 -15
  1080. package/src/browser/icons/whole-word-dark.svg +19 -19
  1081. package/src/browser/icons/whole-word.svg +19 -19
  1082. package/src/browser/index.ts +47 -47
  1083. package/src/browser/json-schema-store.ts +127 -127
  1084. package/src/browser/keybinding.spec.ts +553 -553
  1085. package/src/browser/keybinding.ts +759 -756
  1086. package/src/browser/keyboard/browser-keyboard-frontend-contribution.ts +108 -108
  1087. package/src/browser/keyboard/browser-keyboard-layout-provider.spec.ts +171 -171
  1088. package/src/browser/keyboard/browser-keyboard-layout-provider.ts +469 -469
  1089. package/src/browser/keyboard/browser-keyboard-module.ts +30 -30
  1090. package/src/browser/keyboard/index.ts +20 -20
  1091. package/src/browser/keyboard/keyboard-layout-service.spec.ts +121 -121
  1092. package/src/browser/keyboard/keyboard-layout-service.ts +455 -455
  1093. package/src/browser/keyboard/keys.spec.ts +258 -258
  1094. package/src/browser/keyboard/keys.ts +20 -20
  1095. package/src/browser/keys.ts +21 -21
  1096. package/src/browser/label-parser.spec.ts +165 -165
  1097. package/src/browser/label-parser.ts +108 -108
  1098. package/src/browser/label-provider.spec.ts +62 -62
  1099. package/src/browser/label-provider.ts +385 -385
  1100. package/src/browser/language-icon-provider.ts +55 -55
  1101. package/src/browser/language-service.ts +77 -77
  1102. package/src/browser/logger-frontend-module.ts +65 -65
  1103. package/src/browser/markdown-rendering/markdown-renderer.ts +98 -98
  1104. package/src/browser/menu/browser-context-menu-renderer.ts +48 -47
  1105. package/src/browser/menu/browser-menu-module.ts +28 -28
  1106. package/src/browser/menu/browser-menu-plugin.ts +484 -484
  1107. package/src/browser/menu/context-menu-context.ts +41 -41
  1108. package/src/browser/messaging/connection-source.ts +26 -26
  1109. package/src/browser/messaging/frontend-id-provider.ts +37 -37
  1110. package/src/browser/messaging/index.ts +17 -17
  1111. package/src/browser/messaging/messaging-frontend-module.ts +41 -41
  1112. package/src/browser/messaging/service-connection-provider.ts +126 -126
  1113. package/src/browser/messaging/ws-connection-provider.ts +48 -48
  1114. package/src/browser/messaging/ws-connection-source.ts +230 -230
  1115. package/src/browser/mime-service.ts +30 -30
  1116. package/src/browser/navigatable-types.ts +81 -81
  1117. package/src/browser/navigatable.ts +39 -39
  1118. package/src/browser/opener-service.spec.ts +49 -49
  1119. package/src/browser/opener-service.ts +146 -146
  1120. package/src/browser/performance/frontend-stopwatch.ts +65 -65
  1121. package/src/browser/performance/index.ts +18 -18
  1122. package/src/browser/performance/measurement-frontend-bindings.ts +31 -31
  1123. package/src/browser/preferences/index.ts +23 -23
  1124. package/src/browser/preferences/injectable-preference-proxy.ts +283 -283
  1125. package/src/browser/preferences/preference-configurations.ts +82 -82
  1126. package/src/browser/preferences/preference-contribution.ts +436 -436
  1127. package/src/browser/preferences/preference-language-override-service.ts +111 -111
  1128. package/src/browser/preferences/preference-provider.spec.ts +36 -36
  1129. package/src/browser/preferences/preference-provider.ts +277 -277
  1130. package/src/browser/preferences/preference-proxy.spec.ts +367 -367
  1131. package/src/browser/preferences/preference-proxy.ts +367 -367
  1132. package/src/browser/preferences/preference-schema-provider.spec.ts +130 -130
  1133. package/src/browser/preferences/preference-scope.ts +18 -18
  1134. package/src/browser/preferences/preference-service.spec.ts +613 -613
  1135. package/src/browser/preferences/preference-service.ts +594 -594
  1136. package/src/browser/preferences/preference-validation-service.spec.ts +334 -334
  1137. package/src/browser/preferences/preference-validation-service.ts +358 -358
  1138. package/src/browser/preferences/test/index.ts +19 -19
  1139. package/src/browser/preferences/test/mock-preference-provider.ts +50 -50
  1140. package/src/browser/preferences/test/mock-preference-proxy.ts +48 -48
  1141. package/src/browser/preferences/test/mock-preference-service.ts +63 -63
  1142. package/src/browser/preload/i18n-preload-contribution.ts +50 -50
  1143. package/src/browser/preload/os-preload-contribution.ts +37 -37
  1144. package/src/browser/preload/preload-module.ts +45 -45
  1145. package/src/browser/preload/preloader.ts +37 -37
  1146. package/src/browser/preload/theme-preload-contribution.ts +31 -31
  1147. package/src/browser/progress-bar-factory.ts +29 -29
  1148. package/src/browser/progress-bar.ts +76 -76
  1149. package/src/browser/progress-client.ts +53 -53
  1150. package/src/browser/progress-location-service.spec.ts +50 -50
  1151. package/src/browser/progress-location-service.ts +96 -96
  1152. package/src/browser/progress-status-bar-item.ts +83 -83
  1153. package/src/browser/quick-input/index.ts +23 -23
  1154. package/src/browser/quick-input/quick-access.ts +75 -75
  1155. package/src/browser/quick-input/quick-command-frontend-contribution.ts +89 -89
  1156. package/src/browser/quick-input/quick-command-service.ts +246 -246
  1157. package/src/browser/quick-input/quick-help-service.ts +87 -87
  1158. package/src/browser/quick-input/quick-input-frontend-contribution.ts +33 -33
  1159. package/src/browser/quick-input/quick-input-service.spec.ts +176 -176
  1160. package/src/browser/quick-input/quick-input-service.ts +17 -17
  1161. package/src/browser/quick-input/quick-pick-service-impl.ts +69 -69
  1162. package/src/browser/quick-input/quick-view-service.ts +83 -83
  1163. package/src/browser/request/browser-request-module.ts +23 -23
  1164. package/src/browser/request/browser-request-service.ts +172 -172
  1165. package/src/browser/resource-context-key.ts +77 -77
  1166. package/src/browser/save-resource-service.ts +60 -60
  1167. package/src/browser/saveable.ts +365 -365
  1168. package/src/browser/secondary-window-handler.ts +211 -212
  1169. package/src/browser/shell/additional-views-menu-widget.tsx +71 -71
  1170. package/src/browser/shell/application-shell-mouse-tracker.ts +103 -103
  1171. package/src/browser/shell/application-shell.ts +2261 -2254
  1172. package/src/browser/shell/current-widget-command-adapter.ts +57 -57
  1173. package/src/browser/shell/index.ts +23 -23
  1174. package/src/browser/shell/shell-layout-restorer.ts +399 -399
  1175. package/src/browser/shell/side-panel-handler.ts +793 -793
  1176. package/src/browser/shell/side-panel-toolbar.ts +111 -111
  1177. package/src/browser/shell/sidebar-bottom-menu-widget.tsx +39 -39
  1178. package/src/browser/shell/sidebar-menu-widget.tsx +140 -140
  1179. package/src/browser/shell/sidebar-top-menu-widget.tsx +26 -26
  1180. package/src/browser/shell/split-panels.ts +190 -190
  1181. package/src/browser/shell/tab-bar-decorator.ts +106 -106
  1182. package/src/browser/shell/tab-bar-toolbar/index.ts +19 -19
  1183. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.ts +31 -31
  1184. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.ts +256 -256
  1185. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.ts +207 -207
  1186. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.ts +62 -62
  1187. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +428 -423
  1188. package/src/browser/shell/tab-bars.spec.ts +63 -63
  1189. package/src/browser/shell/tab-bars.ts +1485 -1485
  1190. package/src/browser/shell/theia-dock-panel.ts +255 -255
  1191. package/src/browser/shell/view-contribution.ts +177 -177
  1192. package/src/browser/source-tree/index.ts +19 -19
  1193. package/src/browser/source-tree/source-tree-widget.tsx +107 -107
  1194. package/src/browser/source-tree/source-tree.ts +146 -146
  1195. package/src/browser/source-tree/tree-source.ts +73 -73
  1196. package/src/browser/status-bar/index.ts +29 -29
  1197. package/src/browser/status-bar/status-bar-types.ts +97 -97
  1198. package/src/browser/status-bar/status-bar-view-model.ts +209 -209
  1199. package/src/browser/status-bar/status-bar.tsx +189 -189
  1200. package/src/browser/storage-service.spec.ts +76 -76
  1201. package/src/browser/storage-service.ts +129 -129
  1202. package/src/browser/style/about.css +36 -36
  1203. package/src/browser/style/alert-messages.css +62 -62
  1204. package/src/browser/style/ansi.css +88 -88
  1205. package/src/browser/style/breadcrumbs.css +130 -130
  1206. package/src/browser/style/dialog.css +126 -126
  1207. package/src/browser/style/dockpanel.css +76 -76
  1208. package/src/browser/style/hover-service.css +101 -101
  1209. package/src/browser/style/icons.css +61 -61
  1210. package/src/browser/style/index.css +351 -351
  1211. package/src/browser/style/materialcolors.css +278 -278
  1212. package/src/browser/style/menus.css +230 -230
  1213. package/src/browser/style/notification.css +39 -39
  1214. package/src/browser/style/os.css +87 -87
  1215. package/src/browser/style/progress-bar.css +43 -43
  1216. package/src/browser/style/quick-title-bar.css +45 -45
  1217. package/src/browser/style/scrollbars.css +172 -172
  1218. package/src/browser/style/search-box.css +123 -123
  1219. package/src/browser/style/select-component.css +107 -107
  1220. package/src/browser/style/sidepanel.css +364 -364
  1221. package/src/browser/style/status-bar.css +127 -127
  1222. package/src/browser/style/tabs.css +647 -647
  1223. package/src/browser/style/tooltip.css +28 -28
  1224. package/src/browser/style/tree-decorators.css +81 -81
  1225. package/src/browser/style/tree.css +232 -232
  1226. package/src/browser/style/view-container.css +194 -194
  1227. package/src/browser/style/widget.css +19 -19
  1228. package/src/browser/styling-service.ts +96 -87
  1229. package/src/browser/supported-encodings.ts +262 -262
  1230. package/src/browser/test/jsdom.ts +69 -69
  1231. package/src/browser/test/mock-connection-status-service.ts +33 -33
  1232. package/src/browser/test/mock-env-variables-server.ts +47 -47
  1233. package/src/browser/test/mock-opener-service.ts +34 -34
  1234. package/src/browser/test/mock-storage-service.ts +49 -49
  1235. package/src/browser/theming.ts +206 -206
  1236. package/src/browser/tooltip-service.tsx +96 -96
  1237. package/src/browser/tree/fuzzy-search.spec.ts +99 -99
  1238. package/src/browser/tree/fuzzy-search.ts +136 -136
  1239. package/src/browser/tree/index.ts +29 -29
  1240. package/src/browser/tree/search-box-debounce.ts +96 -96
  1241. package/src/browser/tree/search-box.ts +355 -355
  1242. package/src/browser/tree/test/mock-selectable-tree-model.ts +109 -109
  1243. package/src/browser/tree/test/mock-tree-model.ts +136 -136
  1244. package/src/browser/tree/test/tree-test-container.ts +50 -50
  1245. package/src/browser/tree/tree-compression/compressed-tree-expansion-service.ts +46 -46
  1246. package/src/browser/tree/tree-compression/compressed-tree-model.ts +88 -88
  1247. package/src/browser/tree/tree-compression/compressed-tree-widget.tsx +203 -203
  1248. package/src/browser/tree/tree-compression/index.ts +20 -20
  1249. package/src/browser/tree/tree-compression/tree-compression-service.ts +125 -125
  1250. package/src/browser/tree/tree-compression/tree-compression.css +28 -28
  1251. package/src/browser/tree/tree-consistency.spec.ts +105 -105
  1252. package/src/browser/tree/tree-container.spec.ts +45 -45
  1253. package/src/browser/tree/tree-container.ts +155 -155
  1254. package/src/browser/tree/tree-decorator.spec.ts +162 -162
  1255. package/src/browser/tree/tree-decorator.ts +238 -238
  1256. package/src/browser/tree/tree-expansion.spec.ts +173 -173
  1257. package/src/browser/tree/tree-expansion.ts +165 -165
  1258. package/src/browser/tree/tree-focus-service.ts +55 -55
  1259. package/src/browser/tree/tree-iterator.spec.ts +170 -170
  1260. package/src/browser/tree/tree-iterator.ts +256 -256
  1261. package/src/browser/tree/tree-label-provider.ts +40 -40
  1262. package/src/browser/tree/tree-model.ts +562 -562
  1263. package/src/browser/tree/tree-navigation.ts +58 -58
  1264. package/src/browser/tree/tree-preference.ts +50 -50
  1265. package/src/browser/tree/tree-search.ts +128 -128
  1266. package/src/browser/tree/tree-selectable.spec.ts +152 -152
  1267. package/src/browser/tree/tree-selection-impl.ts +176 -176
  1268. package/src/browser/tree/tree-selection-state.spec.ts +462 -462
  1269. package/src/browser/tree/tree-selection-state.ts +245 -245
  1270. package/src/browser/tree/tree-selection.ts +159 -159
  1271. package/src/browser/tree/tree-view-welcome-widget.tsx +263 -263
  1272. package/src/browser/tree/tree-widget-selection.ts +45 -45
  1273. package/src/browser/tree/tree-widget.tsx +1585 -1585
  1274. package/src/browser/tree/tree.spec.ts +241 -241
  1275. package/src/browser/tree/tree.ts +425 -425
  1276. package/src/browser/user-working-directory-provider.ts +77 -77
  1277. package/src/browser/view-container.ts +1640 -1640
  1278. package/src/browser/widget-decoration.ts +358 -358
  1279. package/src/browser/widget-manager.spec.ts +102 -102
  1280. package/src/browser/widget-manager.ts +310 -310
  1281. package/src/browser/widget-open-handler.ts +165 -165
  1282. package/src/browser/widgets/alert-message.tsx +56 -56
  1283. package/src/browser/widgets/enhanced-preview-widget.ts +27 -27
  1284. package/src/browser/widgets/extractable-widget.ts +33 -33
  1285. package/src/browser/widgets/index.ts +20 -20
  1286. package/src/browser/widgets/previewable-widget.ts +31 -31
  1287. package/src/browser/widgets/react-renderer.tsx +50 -50
  1288. package/src/browser/widgets/react-widget.tsx +51 -51
  1289. package/src/browser/widgets/select-component.tsx +367 -367
  1290. package/src/browser/widgets/widget.ts +406 -406
  1291. package/src/browser/window/browser-window-module.ts +32 -32
  1292. package/src/browser/window/default-secondary-window-service.ts +185 -187
  1293. package/src/browser/window/default-window-service.spec.ts +78 -78
  1294. package/src/browser/window/default-window-service.ts +171 -167
  1295. package/src/browser/window/secondary-window-service.ts +39 -39
  1296. package/src/browser/window/test/mock-window-service.ts +29 -28
  1297. package/src/browser/window/window-service.ts +78 -68
  1298. package/src/browser/window/window-title-service.ts +107 -107
  1299. package/src/browser/window/window-title-updater.ts +95 -95
  1300. package/src/browser/window-contribution.ts +64 -64
  1301. package/src/browser-only/frontend-only-application-module.ts +115 -115
  1302. package/src/browser-only/i18n/i18n-frontend-only-module.ts +37 -37
  1303. package/src/browser-only/logger-frontend-only-module.ts +63 -63
  1304. package/src/browser-only/messaging/frontend-only-service-connection-provider.ts +39 -39
  1305. package/src/browser-only/messaging/messaging-frontend-only-module.ts +42 -42
  1306. package/src/browser-only/preload/frontend-only-preload-module.ts +49 -49
  1307. package/src/common/accessibility.ts +33 -33
  1308. package/src/common/application-error.spec.ts +27 -27
  1309. package/src/common/application-error.ts +76 -76
  1310. package/src/common/application-protocol.ts +41 -41
  1311. package/src/common/array-utils.ts +129 -129
  1312. package/src/common/buffer.ts +228 -228
  1313. package/src/common/cancellation.ts +163 -163
  1314. package/src/common/char-code.ts +438 -438
  1315. package/src/common/collections.ts +125 -125
  1316. package/src/common/color.ts +103 -103
  1317. package/src/common/command.spec.ts +208 -208
  1318. package/src/common/command.ts +485 -485
  1319. package/src/common/contribution-filter/contribution-filter-registry.ts +79 -79
  1320. package/src/common/contribution-filter/contribution-filter.ts +64 -64
  1321. package/src/common/contribution-filter/filter.ts +23 -23
  1322. package/src/common/contribution-filter/index.ts +19 -19
  1323. package/src/common/contribution-provider.ts +96 -96
  1324. package/src/common/disposable.spec.ts +94 -94
  1325. package/src/common/disposable.ts +188 -188
  1326. package/src/common/encoding-service.ts +380 -380
  1327. package/src/common/encodings.ts +24 -24
  1328. package/src/common/env-variables/env-variables-protocol.ts +38 -38
  1329. package/src/common/env-variables/index.ts +17 -17
  1330. package/src/common/event.spec.ts +32 -32
  1331. package/src/common/event.ts +469 -469
  1332. package/src/common/file-uri.ts +61 -61
  1333. package/src/common/frontend-application-state.ts +38 -38
  1334. package/src/common/glob.ts +741 -741
  1335. package/src/common/hash.ts +85 -85
  1336. package/src/common/i18n/localization-server.ts +25 -25
  1337. package/src/common/i18n/localization.ts +80 -80
  1338. package/src/common/i18n/nls.metadata.json +31314 -31314
  1339. package/src/common/index.ts +51 -51
  1340. package/src/common/json-schema.ts +106 -106
  1341. package/src/common/key-store.ts +26 -26
  1342. package/src/common/keybinding.ts +152 -152
  1343. package/src/common/keyboard/keyboard-layout-provider.ts +51 -51
  1344. package/src/common/keys.ts +694 -694
  1345. package/src/common/label-protocol.ts +35 -35
  1346. package/src/common/logger-protocol.ts +119 -119
  1347. package/src/common/logger-watcher.ts +48 -48
  1348. package/src/common/logger.spec.ts +46 -46
  1349. package/src/common/logger.ts +389 -389
  1350. package/src/common/lsp-types.ts +34 -34
  1351. package/src/common/markdown-rendering/icon-utilities.ts +30 -30
  1352. package/src/common/markdown-rendering/index.ts +18 -18
  1353. package/src/common/markdown-rendering/markdown-string.ts +152 -152
  1354. package/src/common/menu/action-menu-node.ts +65 -65
  1355. package/src/common/menu/composite-menu-node.spec.ts +67 -67
  1356. package/src/common/menu/composite-menu-node.ts +114 -114
  1357. package/src/common/menu/index.ts +21 -21
  1358. package/src/common/menu/menu-adapter.ts +103 -103
  1359. package/src/common/menu/menu-model-registry.ts +343 -343
  1360. package/src/common/menu/menu-types.ts +219 -219
  1361. package/src/common/menu/menu.spec.ts +101 -101
  1362. package/src/common/message-rpc/channel.spec.ts +88 -88
  1363. package/src/common/message-rpc/channel.ts +300 -300
  1364. package/src/common/message-rpc/index.ts +22 -22
  1365. package/src/common/message-rpc/message-buffer.ts +105 -105
  1366. package/src/common/message-rpc/msg-pack-extension-manager.ts +70 -70
  1367. package/src/common/message-rpc/rpc-message-encoder.spec.ts +65 -65
  1368. package/src/common/message-rpc/rpc-message-encoder.ts +190 -190
  1369. package/src/common/message-rpc/rpc-protocol.ts +255 -255
  1370. package/src/common/message-rpc/uint8-array-message-buffer.spec.ts +41 -41
  1371. package/src/common/message-rpc/uint8-array-message-buffer.ts +213 -213
  1372. package/src/common/message-service-protocol.ts +148 -148
  1373. package/src/common/message-service.ts +226 -226
  1374. package/src/common/messaging/connection-error-handler.ts +73 -73
  1375. package/src/common/messaging/connection-management.ts +43 -43
  1376. package/src/common/messaging/handler.ts +26 -26
  1377. package/src/common/messaging/index.ts +19 -19
  1378. package/src/common/messaging/proxy-factory.spec.ts +108 -108
  1379. package/src/common/messaging/proxy-factory.ts +336 -336
  1380. package/src/common/messaging/socket-write-buffer.ts +52 -52
  1381. package/src/common/messaging/web-socket-channel.ts +76 -76
  1382. package/src/common/nls.ts +151 -149
  1383. package/src/common/numbers.ts +21 -21
  1384. package/src/common/objects.spec.ts +112 -112
  1385. package/src/common/objects.ts +123 -123
  1386. package/src/common/os.ts +82 -82
  1387. package/src/common/path.spec.ts +415 -415
  1388. package/src/common/path.ts +334 -334
  1389. package/src/common/paths.ts +250 -250
  1390. package/src/common/performance/index.ts +19 -19
  1391. package/src/common/performance/measurement-protocol.ts +104 -104
  1392. package/src/common/performance/measurement.ts +130 -130
  1393. package/src/common/performance/stopwatch.ts +183 -183
  1394. package/src/common/preferences/preference-schema.ts +95 -95
  1395. package/src/common/preferences/preference-scope.spec.ts +48 -48
  1396. package/src/common/preferences/preference-scope.ts +68 -68
  1397. package/src/common/prioritizeable.ts +58 -58
  1398. package/src/common/progress-service-protocol.ts +35 -35
  1399. package/src/common/progress-service.ts +82 -82
  1400. package/src/common/promise-util.spec.ts +102 -102
  1401. package/src/common/promise-util.ts +143 -143
  1402. package/src/common/quick-pick-service.ts +356 -355
  1403. package/src/common/reference.spec.ts +145 -145
  1404. package/src/common/reference.ts +230 -230
  1405. package/src/common/resource.ts +430 -430
  1406. package/src/common/selection-command-handler.ts +101 -101
  1407. package/src/common/selection-service.spec.ts +43 -43
  1408. package/src/common/selection-service.ts +49 -49
  1409. package/src/common/selection.ts +50 -50
  1410. package/src/common/severity.ts +111 -111
  1411. package/src/common/stream.ts +718 -718
  1412. package/src/common/strings.ts +231 -231
  1413. package/src/common/telemetry.ts +45 -45
  1414. package/src/common/ternary-search-tree.ts +417 -417
  1415. package/src/common/test/expect.ts +34 -34
  1416. package/src/common/test/mock-logger.ts +118 -118
  1417. package/src/common/test/mock-menu.ts +35 -35
  1418. package/src/common/test/mock-resource-provider.ts +33 -33
  1419. package/src/common/theme.ts +68 -68
  1420. package/src/common/types.spec.ts +86 -86
  1421. package/src/common/types.ts +140 -140
  1422. package/src/common/uri-command-handler.spec.ts +90 -90
  1423. package/src/common/uri-command-handler.ts +148 -148
  1424. package/src/common/uri.spec.ts +278 -278
  1425. package/src/common/uri.ts +279 -279
  1426. package/src/common/uuid.ts +45 -45
  1427. package/src/common/version.ts +17 -17
  1428. package/src/common/view-column.ts +33 -33
  1429. package/src/common/window.ts +34 -34
  1430. package/src/electron-browser/electron-clipboard-service.ts +32 -32
  1431. package/src/electron-browser/keyboard/electron-keyboard-layout-change-notifier.ts +39 -39
  1432. package/src/electron-browser/keyboard/electron-keyboard-module.ts +28 -28
  1433. package/src/electron-browser/menu/electron-context-menu-renderer.ts +122 -120
  1434. package/src/electron-browser/menu/electron-main-menu-factory.ts +335 -335
  1435. package/src/electron-browser/menu/electron-menu-contribution.ts +506 -506
  1436. package/src/electron-browser/menu/electron-menu-module.ts +40 -40
  1437. package/src/electron-browser/menu/electron-menu-style.css +110 -110
  1438. package/src/electron-browser/messaging/electron-frontend-id-provider.ts +25 -25
  1439. package/src/electron-browser/messaging/electron-ipc-connection-source.ts +65 -65
  1440. package/src/electron-browser/messaging/electron-local-ws-connection-source.ts +45 -45
  1441. package/src/electron-browser/messaging/electron-messaging-frontend-module.ts +78 -78
  1442. package/src/electron-browser/messaging/electron-ws-connection-source.ts +38 -38
  1443. package/src/electron-browser/preload.ts +246 -246
  1444. package/src/electron-browser/request/electron-browser-request-module.ts +26 -26
  1445. package/src/electron-browser/token/electron-token-frontend-module.ts +22 -22
  1446. package/src/electron-browser/window/electron-frontend-application-state.ts +26 -26
  1447. package/src/electron-browser/window/electron-secondary-window-service.ts +35 -39
  1448. package/src/electron-browser/window/electron-window-module.ts +41 -41
  1449. package/src/electron-browser/window/electron-window-preferences.ts +76 -76
  1450. package/src/electron-browser/window/electron-window-service.ts +109 -97
  1451. package/src/electron-common/electron-api.ts +148 -148
  1452. package/src/electron-common/electron-main-window-service.ts +24 -24
  1453. package/src/electron-common/electron-token.ts +27 -27
  1454. package/src/electron-main/electron-api-main.ts +340 -333
  1455. package/src/electron-main/electron-main-application-module.ts +65 -65
  1456. package/src/electron-main/electron-main-application.ts +685 -685
  1457. package/src/electron-main/electron-main-constants.ts +22 -22
  1458. package/src/electron-main/electron-main-window-service-impl.ts +44 -44
  1459. package/src/electron-main/electron-security-token-service.ts +36 -36
  1460. package/src/electron-main/event-utils.ts +36 -36
  1461. package/src/electron-main/messaging/electron-connection-handler.ts +21 -21
  1462. package/src/electron-main/messaging/electron-messaging-contribution.ts +143 -143
  1463. package/src/electron-main/messaging/electron-messaging-service.ts +35 -35
  1464. package/src/electron-main/theia-electron-window.ts +202 -202
  1465. package/src/electron-node/hosting/electron-backend-hosting-module.ts +24 -24
  1466. package/src/electron-node/hosting/electron-ws-origin-validator.ts +37 -37
  1467. package/src/electron-node/keyboard/electron-backend-keyboard-module.ts +30 -30
  1468. package/src/electron-node/keyboard/electron-keyboard-layout-provider.ts +35 -35
  1469. package/src/electron-node/request/electron-backend-request-module.ts +23 -23
  1470. package/src/electron-node/request/electron-backend-request-service.ts +78 -78
  1471. package/src/electron-node/token/electron-token-backend-contribution.ts +48 -48
  1472. package/src/electron-node/token/electron-token-backend-module.ts +28 -28
  1473. package/src/electron-node/token/electron-token-validator.ts +93 -93
  1474. package/src/node/application-server.ts +55 -55
  1475. package/src/node/backend-application-config-provider.spec.ts +29 -29
  1476. package/src/node/backend-application-config-provider.ts +48 -48
  1477. package/src/node/backend-application-module.ts +140 -140
  1478. package/src/node/backend-application.ts +382 -382
  1479. package/src/node/backend-remote-service.ts +25 -25
  1480. package/src/node/cli.spec.ts +94 -94
  1481. package/src/node/cli.ts +63 -63
  1482. package/src/node/console-logger-server.spec.ts +59 -59
  1483. package/src/node/console-logger-server.ts +76 -76
  1484. package/src/node/debug.ts +30 -30
  1485. package/src/node/dynamic-require.ts +56 -56
  1486. package/src/node/env-variables/env-variables-server.ts +120 -120
  1487. package/src/node/env-variables/index.ts +17 -17
  1488. package/src/node/environment-utils.spec.ts +92 -92
  1489. package/src/node/environment-utils.ts +66 -66
  1490. package/src/node/file-uri.spec.ts +76 -76
  1491. package/src/node/filesystem-locking.ts +77 -77
  1492. package/src/node/hosting/backend-application-hosts.ts +60 -60
  1493. package/src/node/hosting/backend-hosting-module.ts +26 -26
  1494. package/src/node/hosting/ws-origin-validator.ts +36 -36
  1495. package/src/node/i18n/i18n-backend-module.ts +42 -42
  1496. package/src/node/i18n/localization-contribution.ts +112 -112
  1497. package/src/node/i18n/localization-provider.ts +125 -125
  1498. package/src/node/i18n/localization-server.ts +52 -52
  1499. package/src/node/i18n/theia-localization-contribution.ts +36 -36
  1500. package/src/node/index.ts +22 -22
  1501. package/src/node/key-store-server.ts +162 -162
  1502. package/src/node/logger-backend-module.ts +88 -88
  1503. package/src/node/logger-cli-contribution.spec.ts +245 -245
  1504. package/src/node/logger-cli-contribution.ts +168 -168
  1505. package/src/node/main.ts +33 -33
  1506. package/src/node/messaging/binary-message-pipe.ts +168 -168
  1507. package/src/node/messaging/connection-container-module.ts +96 -96
  1508. package/src/node/messaging/default-messaging-service.ts +129 -129
  1509. package/src/node/messaging/frontend-connection-service.ts +24 -24
  1510. package/src/node/messaging/index.ts +19 -19
  1511. package/src/node/messaging/ipc-bootstrap.ts +27 -27
  1512. package/src/node/messaging/ipc-channel.ts +77 -77
  1513. package/src/node/messaging/ipc-connection-provider.ts +107 -107
  1514. package/src/node/messaging/ipc-protocol.ts +76 -76
  1515. package/src/node/messaging/messaging-backend-module.ts +52 -52
  1516. package/src/node/messaging/messaging-listeners.ts +52 -52
  1517. package/src/node/messaging/messaging-service.ts +46 -46
  1518. package/src/node/messaging/test/test-web-socket-channel.ts +61 -61
  1519. package/src/node/messaging/websocket-endpoint.ts +79 -79
  1520. package/src/node/messaging/websocket-frontend-connection-service.ts +176 -176
  1521. package/src/node/os-backend-provider.ts +25 -25
  1522. package/src/node/performance/index.ts +18 -18
  1523. package/src/node/performance/measurement-backend-bindings.ts +35 -35
  1524. package/src/node/performance/node-stopwatch.ts +40 -40
  1525. package/src/node/process-utils.spec.ts +48 -48
  1526. package/src/node/process-utils.ts +102 -102
  1527. package/src/node/request/backend-request-facade.ts +39 -39
  1528. package/src/node/request/backend-request-module.ts +25 -25
  1529. package/src/node/request/proxy-cli-contribution.ts +65 -65
  1530. package/src/node/ws-request-validators.ts +56 -56
  1531. package/src/typings/native-keymap.d.ts +108 -108
@@ -1,335 +1,335 @@
1
- // *****************************************************************************
2
- // Copyright (C) 2017 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
- /* eslint-disable @typescript-eslint/no-explicit-any */
18
-
19
- import { inject, injectable, postConstruct } from 'inversify';
20
- import { isOSX, MAIN_MENU_BAR, MenuPath, MenuNode, CommandMenuNode, CompoundMenuNode, CompoundMenuNodeRole } from '../../common';
21
- import { Keybinding } from '../../common/keybinding';
22
- import { PreferenceService, CommonCommands } from '../../browser';
23
- import debounce = require('lodash.debounce');
24
- import { MAXIMIZED_CLASS } from '../../browser/shell/theia-dock-panel';
25
- import { BrowserMainMenuFactory } from '../../browser/menu/browser-menu-plugin';
26
- import { ContextMatcher } from '../../browser/context-key-service';
27
- import { MenuDto, MenuRole } from '../../electron-common/electron-api';
28
-
29
- /**
30
- * Representation of possible electron menu options.
31
- */
32
- export interface ElectronMenuOptions {
33
- /**
34
- * Controls whether to render disabled menu items.
35
- * Defaults to `true`.
36
- */
37
- readonly showDisabled?: boolean;
38
-
39
- /**
40
- * Controls whether to render disabled items as disabled
41
- * Defaults to `true`
42
- */
43
- readonly honorDisabled?: boolean;
44
- /**
45
- * A DOM context to use when evaluating any `when` clauses
46
- * of menu items registered for this item.
47
- */
48
- context?: HTMLElement;
49
- /**
50
- * A context key service to use when evaluating any `when` clauses.
51
- * If none is provided, the global context will be used.
52
- */
53
- contextKeyService?: ContextMatcher;
54
- /**
55
- * The root menu path for which the menu is being built.
56
- */
57
- rootMenuPath: MenuPath
58
- }
59
-
60
- /**
61
- * Define the action of the menu item, when specified the `click` property will
62
- * be ignored. See [roles](https://www.electronjs.org/docs/api/menu-item#roles).
63
- */
64
- export type ElectronMenuItemRole = ('undo' | 'redo' | 'cut' | 'copy' | 'paste' |
65
- 'pasteAndMatchStyle' | 'delete' | 'selectAll' | 'reload' | 'forceReload' |
66
- 'toggleDevTools' | 'resetZoom' | 'zoomIn' | 'zoomOut' | 'togglefullscreen' |
67
- 'window' | 'minimize' | 'close' | 'help' | 'about' |
68
- 'services' | 'hide' | 'hideOthers' | 'unhide' | 'quit' |
69
- 'startSpeaking' | 'stopSpeaking' | 'zoom' | 'front' | 'appMenu' |
70
- 'fileMenu' | 'editMenu' | 'viewMenu' | 'recentDocuments' | 'toggleTabBar' |
71
- 'selectNextTab' | 'selectPreviousTab' | 'mergeAllWindows' | 'clearRecentDocuments' |
72
- 'moveTabToNewWindow' | 'windowMenu');
73
-
74
- @injectable()
75
- export class ElectronMainMenuFactory extends BrowserMainMenuFactory {
76
-
77
- protected _menu?: MenuDto[];
78
- protected _toggledCommands: Set<string> = new Set();
79
-
80
- @inject(PreferenceService)
81
- protected preferencesService: PreferenceService;
82
-
83
- @postConstruct()
84
- postConstruct(): void {
85
- this.preferencesService.onPreferenceChanged(
86
- debounce(e => {
87
- if (e.preferenceName === 'window.menuBarVisibility') {
88
- this.setMenuBar();
89
- }
90
- if (this._menu) {
91
- for (const cmd of this._toggledCommands) {
92
- const menuItem = this.findMenuById(this._menu, cmd);
93
- if (menuItem) {
94
- menuItem.checked = this.commandRegistry.isToggled(cmd);
95
- }
96
- }
97
- window.electronTheiaCore.setMenu(this._menu);
98
- }
99
- }, 10)
100
- );
101
- this.keybindingRegistry.onKeybindingsChanged(() => {
102
- this.setMenuBar();
103
- });
104
- }
105
-
106
- async setMenuBar(): Promise<void> {
107
- await this.preferencesService.ready;
108
- const createdMenuBar = this.createElectronMenuBar();
109
- window.electronTheiaCore.setMenu(createdMenuBar);
110
- }
111
-
112
- createElectronMenuBar(): MenuDto[] | undefined {
113
- const preference = this.preferencesService.get<string>('window.menuBarVisibility') || 'classic';
114
- const maxWidget = document.getElementsByClassName(MAXIMIZED_CLASS);
115
- if (preference === 'visible' || (preference === 'classic' && maxWidget.length === 0)) {
116
- const menuModel = this.menuProvider.getMenu(MAIN_MENU_BAR);
117
- this._menu = this.fillMenuTemplate([], menuModel, [], { honorDisabled: false, rootMenuPath: MAIN_MENU_BAR });
118
- if (isOSX) {
119
- this._menu.unshift(this.createOSXMenu());
120
- }
121
- return this._menu;
122
- }
123
- this._menu = undefined;
124
- // eslint-disable-next-line no-null/no-null
125
- return undefined;
126
- }
127
-
128
- createElectronContextMenu(menuPath: MenuPath, args?: any[], context?: HTMLElement, contextKeyService?: ContextMatcher, skipSingleRootNode?: boolean): MenuDto[] {
129
- const menuModel = skipSingleRootNode ? this.menuProvider.removeSingleRootNode(this.menuProvider.getMenu(menuPath), menuPath) : this.menuProvider.getMenu(menuPath);
130
- return this.fillMenuTemplate([], menuModel, args, { showDisabled: true, context, rootMenuPath: menuPath, contextKeyService });
131
- }
132
-
133
- protected fillMenuTemplate(parentItems: MenuDto[],
134
- menu: MenuNode,
135
- args: unknown[] = [],
136
- options: ElectronMenuOptions
137
- ): MenuDto[] {
138
- const showDisabled = options?.showDisabled !== false;
139
- const honorDisabled = options?.honorDisabled !== false;
140
-
141
- if (CompoundMenuNode.is(menu) && menu.children.length && this.undefinedOrMatch(options.contextKeyService ?? this.contextKeyService, menu.when, options.context)) {
142
- const role = CompoundMenuNode.getRole(menu);
143
- if (role === CompoundMenuNodeRole.Group && menu.id === 'inline') {
144
- return parentItems;
145
- }
146
- const children = CompoundMenuNode.getFlatChildren(menu.children);
147
- const myItems: MenuDto[] = [];
148
- children.forEach(child => this.fillMenuTemplate(myItems, child, args, options));
149
- if (myItems.length === 0) {
150
- return parentItems;
151
- }
152
- if (role === CompoundMenuNodeRole.Submenu) {
153
- parentItems.push({ label: menu.label, submenu: myItems });
154
- } else if (role === CompoundMenuNodeRole.Group && menu.id !== 'inline') {
155
- if (parentItems.length && parentItems[parentItems.length - 1].type !== 'separator') {
156
- parentItems.push({ type: 'separator' });
157
- }
158
- parentItems.push(...myItems);
159
- parentItems.push({ type: 'separator' });
160
- }
161
- } else if (menu.command) {
162
- const node = menu.altNode && this.context.altPressed ? menu.altNode : (menu as MenuNode & CommandMenuNode);
163
- const commandId = node.command;
164
-
165
- // That is only a sanity check at application startup.
166
- if (!this.commandRegistry.getCommand(commandId)) {
167
- console.debug(`Skipping menu item with missing command: "${commandId}".`);
168
- return parentItems;
169
- }
170
-
171
- if (
172
- !this.menuCommandExecutor.isVisible(options.rootMenuPath, commandId, ...args)
173
- || !this.undefinedOrMatch(options.contextKeyService ?? this.contextKeyService, node.when, options.context)) {
174
- return parentItems;
175
- }
176
-
177
- // We should omit rendering context-menu items which are disabled.
178
- if (!showDisabled && !this.menuCommandExecutor.isEnabled(options.rootMenuPath, commandId, ...args)) {
179
- return parentItems;
180
- }
181
-
182
- const bindings = this.keybindingRegistry.getKeybindingsForCommand(commandId);
183
-
184
- const accelerator = bindings[0] && this.acceleratorFor(bindings[0]);
185
-
186
- const menuItem: MenuDto = {
187
- id: node.id,
188
- label: node.label,
189
- type: this.commandRegistry.getToggledHandler(commandId, ...args) ? 'checkbox' : 'normal',
190
- checked: this.commandRegistry.isToggled(commandId, ...args),
191
- enabled: !honorDisabled || this.commandRegistry.isEnabled(commandId, ...args), // see https://github.com/eclipse-theia/theia/issues/446
192
- visible: true,
193
- accelerator,
194
- execute: () => this.execute(commandId, args, options.rootMenuPath)
195
- };
196
-
197
- if (isOSX) {
198
- const role = this.roleFor(node.id);
199
- if (role) {
200
- menuItem.role = role;
201
- delete menuItem.execute;
202
- }
203
- }
204
- parentItems.push(menuItem);
205
-
206
- if (this.commandRegistry.getToggledHandler(commandId, ...args)) {
207
- this._toggledCommands.add(commandId);
208
- }
209
- }
210
- return parentItems;
211
- }
212
-
213
- protected undefinedOrMatch(contextKeyService: ContextMatcher, expression?: string, context?: HTMLElement): boolean {
214
- if (expression) {
215
- return contextKeyService.match(expression, context);
216
- }
217
- return true;
218
- }
219
-
220
- /**
221
- * Return a user visible representation of a keybinding.
222
- */
223
- protected acceleratorFor(keybinding: Keybinding): string {
224
- const bindingKeySequence = this.keybindingRegistry.resolveKeybinding(keybinding);
225
- // FIXME see https://github.com/electron/electron/issues/11740
226
- // Key Sequences can't be represented properly in the electron menu.
227
- //
228
- // We can do what VS Code does, and append the chords as a suffix to the menu label.
229
- // https://github.com/eclipse-theia/theia/issues/1199#issuecomment-430909480
230
- if (bindingKeySequence.length > 1) {
231
- return '';
232
- }
233
-
234
- const keyCode = bindingKeySequence[0];
235
- return this.keybindingRegistry.acceleratorForKeyCode(keyCode, '+', true);
236
- }
237
-
238
- protected roleFor(id: string): MenuRole | undefined {
239
- let role: MenuRole | undefined;
240
- switch (id) {
241
- case CommonCommands.UNDO.id:
242
- role = 'undo';
243
- break;
244
- case CommonCommands.REDO.id:
245
- role = 'redo';
246
- break;
247
- case CommonCommands.CUT.id:
248
- role = 'cut';
249
- break;
250
- case CommonCommands.COPY.id:
251
- role = 'copy';
252
- break;
253
- case CommonCommands.PASTE.id:
254
- role = 'paste';
255
- break;
256
- case CommonCommands.SELECT_ALL.id:
257
- role = 'selectAll';
258
- break;
259
- default:
260
- break;
261
- }
262
- return role;
263
- }
264
-
265
- protected async execute(cmd: string, args: any[], menuPath: MenuPath): Promise<void> {
266
- try {
267
- // This is workaround for https://github.com/eclipse-theia/theia/issues/446.
268
- // Electron menus do not update based on the `isEnabled`, `isVisible` property of the command.
269
- // We need to check if we can execute it.
270
- if (this.menuCommandExecutor.isEnabled(menuPath, cmd, ...args)) {
271
- await this.menuCommandExecutor.executeCommand(menuPath, cmd, ...args);
272
- if (this._menu && this.menuCommandExecutor.isVisible(menuPath, cmd, ...args)) {
273
- const item = this.findMenuById(this._menu, cmd);
274
- if (item) {
275
- item.checked = this.menuCommandExecutor.isToggled(menuPath, cmd, ...args);
276
- window.electronTheiaCore.setMenu(this._menu);
277
- }
278
- }
279
- }
280
- } catch {
281
- // no-op
282
- }
283
- }
284
- findMenuById(items: MenuDto[], id: string): MenuDto | undefined {
285
- for (const item of items) {
286
- if (item.id === id) {
287
- return item;
288
- }
289
- if (item.submenu) {
290
- const found = this.findMenuById(item.submenu, id);
291
- if (found) {
292
- return found;
293
- }
294
- }
295
- }
296
- return undefined;
297
- }
298
-
299
- protected createOSXMenu(): MenuDto {
300
- return {
301
- label: 'Theia',
302
- submenu: [
303
- {
304
- role: 'about'
305
- },
306
- {
307
- type: 'separator'
308
- },
309
- {
310
- role: 'services',
311
- submenu: []
312
- },
313
- {
314
- type: 'separator'
315
- },
316
- {
317
- role: 'hide'
318
- },
319
- {
320
- role: 'hideOthers'
321
- },
322
- {
323
- role: 'unhide'
324
- },
325
- {
326
- type: 'separator'
327
- },
328
- {
329
- role: 'quit'
330
- }
331
- ]
332
- };
333
- }
334
-
335
- }
1
+ // *****************************************************************************
2
+ // Copyright (C) 2017 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
+ /* eslint-disable @typescript-eslint/no-explicit-any */
18
+
19
+ import { inject, injectable, postConstruct } from 'inversify';
20
+ import { isOSX, MAIN_MENU_BAR, MenuPath, MenuNode, CommandMenuNode, CompoundMenuNode, CompoundMenuNodeRole } from '../../common';
21
+ import { Keybinding } from '../../common/keybinding';
22
+ import { PreferenceService, CommonCommands } from '../../browser';
23
+ import debounce = require('lodash.debounce');
24
+ import { MAXIMIZED_CLASS } from '../../browser/shell/theia-dock-panel';
25
+ import { BrowserMainMenuFactory } from '../../browser/menu/browser-menu-plugin';
26
+ import { ContextMatcher } from '../../browser/context-key-service';
27
+ import { MenuDto, MenuRole } from '../../electron-common/electron-api';
28
+
29
+ /**
30
+ * Representation of possible electron menu options.
31
+ */
32
+ export interface ElectronMenuOptions {
33
+ /**
34
+ * Controls whether to render disabled menu items.
35
+ * Defaults to `true`.
36
+ */
37
+ readonly showDisabled?: boolean;
38
+
39
+ /**
40
+ * Controls whether to render disabled items as disabled
41
+ * Defaults to `true`
42
+ */
43
+ readonly honorDisabled?: boolean;
44
+ /**
45
+ * A DOM context to use when evaluating any `when` clauses
46
+ * of menu items registered for this item.
47
+ */
48
+ context?: HTMLElement;
49
+ /**
50
+ * A context key service to use when evaluating any `when` clauses.
51
+ * If none is provided, the global context will be used.
52
+ */
53
+ contextKeyService?: ContextMatcher;
54
+ /**
55
+ * The root menu path for which the menu is being built.
56
+ */
57
+ rootMenuPath: MenuPath
58
+ }
59
+
60
+ /**
61
+ * Define the action of the menu item, when specified the `click` property will
62
+ * be ignored. See [roles](https://www.electronjs.org/docs/api/menu-item#roles).
63
+ */
64
+ export type ElectronMenuItemRole = ('undo' | 'redo' | 'cut' | 'copy' | 'paste' |
65
+ 'pasteAndMatchStyle' | 'delete' | 'selectAll' | 'reload' | 'forceReload' |
66
+ 'toggleDevTools' | 'resetZoom' | 'zoomIn' | 'zoomOut' | 'togglefullscreen' |
67
+ 'window' | 'minimize' | 'close' | 'help' | 'about' |
68
+ 'services' | 'hide' | 'hideOthers' | 'unhide' | 'quit' |
69
+ 'startSpeaking' | 'stopSpeaking' | 'zoom' | 'front' | 'appMenu' |
70
+ 'fileMenu' | 'editMenu' | 'viewMenu' | 'recentDocuments' | 'toggleTabBar' |
71
+ 'selectNextTab' | 'selectPreviousTab' | 'mergeAllWindows' | 'clearRecentDocuments' |
72
+ 'moveTabToNewWindow' | 'windowMenu');
73
+
74
+ @injectable()
75
+ export class ElectronMainMenuFactory extends BrowserMainMenuFactory {
76
+
77
+ protected _menu?: MenuDto[];
78
+ protected _toggledCommands: Set<string> = new Set();
79
+
80
+ @inject(PreferenceService)
81
+ protected preferencesService: PreferenceService;
82
+
83
+ @postConstruct()
84
+ postConstruct(): void {
85
+ this.preferencesService.onPreferenceChanged(
86
+ debounce(e => {
87
+ if (e.preferenceName === 'window.menuBarVisibility') {
88
+ this.setMenuBar();
89
+ }
90
+ if (this._menu) {
91
+ for (const cmd of this._toggledCommands) {
92
+ const menuItem = this.findMenuById(this._menu, cmd);
93
+ if (menuItem) {
94
+ menuItem.checked = this.commandRegistry.isToggled(cmd);
95
+ }
96
+ }
97
+ window.electronTheiaCore.setMenu(this._menu);
98
+ }
99
+ }, 10)
100
+ );
101
+ this.keybindingRegistry.onKeybindingsChanged(() => {
102
+ this.setMenuBar();
103
+ });
104
+ }
105
+
106
+ async setMenuBar(): Promise<void> {
107
+ await this.preferencesService.ready;
108
+ const createdMenuBar = this.createElectronMenuBar();
109
+ window.electronTheiaCore.setMenu(createdMenuBar);
110
+ }
111
+
112
+ createElectronMenuBar(): MenuDto[] | undefined {
113
+ const preference = this.preferencesService.get<string>('window.menuBarVisibility') || 'classic';
114
+ const maxWidget = document.getElementsByClassName(MAXIMIZED_CLASS);
115
+ if (preference === 'visible' || (preference === 'classic' && maxWidget.length === 0)) {
116
+ const menuModel = this.menuProvider.getMenu(MAIN_MENU_BAR);
117
+ this._menu = this.fillMenuTemplate([], menuModel, [], { honorDisabled: false, rootMenuPath: MAIN_MENU_BAR });
118
+ if (isOSX) {
119
+ this._menu.unshift(this.createOSXMenu());
120
+ }
121
+ return this._menu;
122
+ }
123
+ this._menu = undefined;
124
+ // eslint-disable-next-line no-null/no-null
125
+ return undefined;
126
+ }
127
+
128
+ createElectronContextMenu(menuPath: MenuPath, args?: any[], context?: HTMLElement, contextKeyService?: ContextMatcher, skipSingleRootNode?: boolean): MenuDto[] {
129
+ const menuModel = skipSingleRootNode ? this.menuProvider.removeSingleRootNode(this.menuProvider.getMenu(menuPath), menuPath) : this.menuProvider.getMenu(menuPath);
130
+ return this.fillMenuTemplate([], menuModel, args, { showDisabled: true, context, rootMenuPath: menuPath, contextKeyService });
131
+ }
132
+
133
+ protected fillMenuTemplate(parentItems: MenuDto[],
134
+ menu: MenuNode,
135
+ args: unknown[] = [],
136
+ options: ElectronMenuOptions
137
+ ): MenuDto[] {
138
+ const showDisabled = options?.showDisabled !== false;
139
+ const honorDisabled = options?.honorDisabled !== false;
140
+
141
+ if (CompoundMenuNode.is(menu) && menu.children.length && this.undefinedOrMatch(options.contextKeyService ?? this.contextKeyService, menu.when, options.context)) {
142
+ const role = CompoundMenuNode.getRole(menu);
143
+ if (role === CompoundMenuNodeRole.Group && menu.id === 'inline') {
144
+ return parentItems;
145
+ }
146
+ const children = CompoundMenuNode.getFlatChildren(menu.children);
147
+ const myItems: MenuDto[] = [];
148
+ children.forEach(child => this.fillMenuTemplate(myItems, child, args, options));
149
+ if (myItems.length === 0) {
150
+ return parentItems;
151
+ }
152
+ if (role === CompoundMenuNodeRole.Submenu) {
153
+ parentItems.push({ label: menu.label, submenu: myItems });
154
+ } else if (role === CompoundMenuNodeRole.Group && menu.id !== 'inline') {
155
+ if (parentItems.length && parentItems[parentItems.length - 1].type !== 'separator') {
156
+ parentItems.push({ type: 'separator' });
157
+ }
158
+ parentItems.push(...myItems);
159
+ parentItems.push({ type: 'separator' });
160
+ }
161
+ } else if (menu.command) {
162
+ const node = menu.altNode && this.context.altPressed ? menu.altNode : (menu as MenuNode & CommandMenuNode);
163
+ const commandId = node.command;
164
+
165
+ // That is only a sanity check at application startup.
166
+ if (!this.commandRegistry.getCommand(commandId)) {
167
+ console.debug(`Skipping menu item with missing command: "${commandId}".`);
168
+ return parentItems;
169
+ }
170
+
171
+ if (
172
+ !this.menuCommandExecutor.isVisible(options.rootMenuPath, commandId, ...args)
173
+ || !this.undefinedOrMatch(options.contextKeyService ?? this.contextKeyService, node.when, options.context)) {
174
+ return parentItems;
175
+ }
176
+
177
+ // We should omit rendering context-menu items which are disabled.
178
+ if (!showDisabled && !this.menuCommandExecutor.isEnabled(options.rootMenuPath, commandId, ...args)) {
179
+ return parentItems;
180
+ }
181
+
182
+ const bindings = this.keybindingRegistry.getKeybindingsForCommand(commandId);
183
+
184
+ const accelerator = bindings[0] && this.acceleratorFor(bindings[0]);
185
+
186
+ const menuItem: MenuDto = {
187
+ id: node.id,
188
+ label: node.label,
189
+ type: this.commandRegistry.getToggledHandler(commandId, ...args) ? 'checkbox' : 'normal',
190
+ checked: this.commandRegistry.isToggled(commandId, ...args),
191
+ enabled: !honorDisabled || this.commandRegistry.isEnabled(commandId, ...args), // see https://github.com/eclipse-theia/theia/issues/446
192
+ visible: true,
193
+ accelerator,
194
+ execute: () => this.execute(commandId, args, options.rootMenuPath)
195
+ };
196
+
197
+ if (isOSX) {
198
+ const role = this.roleFor(node.id);
199
+ if (role) {
200
+ menuItem.role = role;
201
+ delete menuItem.execute;
202
+ }
203
+ }
204
+ parentItems.push(menuItem);
205
+
206
+ if (this.commandRegistry.getToggledHandler(commandId, ...args)) {
207
+ this._toggledCommands.add(commandId);
208
+ }
209
+ }
210
+ return parentItems;
211
+ }
212
+
213
+ protected undefinedOrMatch(contextKeyService: ContextMatcher, expression?: string, context?: HTMLElement): boolean {
214
+ if (expression) {
215
+ return contextKeyService.match(expression, context);
216
+ }
217
+ return true;
218
+ }
219
+
220
+ /**
221
+ * Return a user visible representation of a keybinding.
222
+ */
223
+ protected acceleratorFor(keybinding: Keybinding): string {
224
+ const bindingKeySequence = this.keybindingRegistry.resolveKeybinding(keybinding);
225
+ // FIXME see https://github.com/electron/electron/issues/11740
226
+ // Key Sequences can't be represented properly in the electron menu.
227
+ //
228
+ // We can do what VS Code does, and append the chords as a suffix to the menu label.
229
+ // https://github.com/eclipse-theia/theia/issues/1199#issuecomment-430909480
230
+ if (bindingKeySequence.length > 1) {
231
+ return '';
232
+ }
233
+
234
+ const keyCode = bindingKeySequence[0];
235
+ return this.keybindingRegistry.acceleratorForKeyCode(keyCode, '+', true);
236
+ }
237
+
238
+ protected roleFor(id: string): MenuRole | undefined {
239
+ let role: MenuRole | undefined;
240
+ switch (id) {
241
+ case CommonCommands.UNDO.id:
242
+ role = 'undo';
243
+ break;
244
+ case CommonCommands.REDO.id:
245
+ role = 'redo';
246
+ break;
247
+ case CommonCommands.CUT.id:
248
+ role = 'cut';
249
+ break;
250
+ case CommonCommands.COPY.id:
251
+ role = 'copy';
252
+ break;
253
+ case CommonCommands.PASTE.id:
254
+ role = 'paste';
255
+ break;
256
+ case CommonCommands.SELECT_ALL.id:
257
+ role = 'selectAll';
258
+ break;
259
+ default:
260
+ break;
261
+ }
262
+ return role;
263
+ }
264
+
265
+ protected async execute(cmd: string, args: any[], menuPath: MenuPath): Promise<void> {
266
+ try {
267
+ // This is workaround for https://github.com/eclipse-theia/theia/issues/446.
268
+ // Electron menus do not update based on the `isEnabled`, `isVisible` property of the command.
269
+ // We need to check if we can execute it.
270
+ if (this.menuCommandExecutor.isEnabled(menuPath, cmd, ...args)) {
271
+ await this.menuCommandExecutor.executeCommand(menuPath, cmd, ...args);
272
+ if (this._menu && this.menuCommandExecutor.isVisible(menuPath, cmd, ...args)) {
273
+ const item = this.findMenuById(this._menu, cmd);
274
+ if (item) {
275
+ item.checked = this.menuCommandExecutor.isToggled(menuPath, cmd, ...args);
276
+ window.electronTheiaCore.setMenu(this._menu);
277
+ }
278
+ }
279
+ }
280
+ } catch {
281
+ // no-op
282
+ }
283
+ }
284
+ findMenuById(items: MenuDto[], id: string): MenuDto | undefined {
285
+ for (const item of items) {
286
+ if (item.id === id) {
287
+ return item;
288
+ }
289
+ if (item.submenu) {
290
+ const found = this.findMenuById(item.submenu, id);
291
+ if (found) {
292
+ return found;
293
+ }
294
+ }
295
+ }
296
+ return undefined;
297
+ }
298
+
299
+ protected createOSXMenu(): MenuDto {
300
+ return {
301
+ label: 'Theia',
302
+ submenu: [
303
+ {
304
+ role: 'about'
305
+ },
306
+ {
307
+ type: 'separator'
308
+ },
309
+ {
310
+ role: 'services',
311
+ submenu: []
312
+ },
313
+ {
314
+ type: 'separator'
315
+ },
316
+ {
317
+ role: 'hide'
318
+ },
319
+ {
320
+ role: 'hideOthers'
321
+ },
322
+ {
323
+ role: 'unhide'
324
+ },
325
+ {
326
+ type: 'separator'
327
+ },
328
+ {
329
+ role: 'quit'
330
+ }
331
+ ]
332
+ };
333
+ }
334
+
335
+ }