@theia/core 1.17.0-next.ff9e0507 → 1.18.0-next.05f289b3

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 (783) hide show
  1. package/README.md +3 -3
  2. package/lib/browser/about-dialog.js +54 -130
  3. package/lib/browser/about-dialog.js.map +1 -1
  4. package/lib/browser/authentication-service.js +237 -401
  5. package/lib/browser/authentication-service.js.map +1 -1
  6. package/lib/browser/breadcrumbs/breadcrumb-popup-container.d.ts +50 -0
  7. package/lib/browser/breadcrumbs/breadcrumb-popup-container.d.ts.map +1 -0
  8. package/lib/browser/breadcrumbs/breadcrumb-popup-container.js +115 -0
  9. package/lib/browser/breadcrumbs/breadcrumb-popup-container.js.map +1 -0
  10. package/lib/browser/breadcrumbs/breadcrumb-renderer.d.ts +28 -0
  11. package/lib/browser/breadcrumbs/breadcrumb-renderer.d.ts.map +1 -0
  12. package/lib/browser/breadcrumbs/breadcrumb-renderer.js +43 -0
  13. package/lib/browser/breadcrumbs/breadcrumb-renderer.js.map +1 -0
  14. package/lib/browser/breadcrumbs/breadcrumbs-constants.d.ts +65 -0
  15. package/lib/browser/breadcrumbs/breadcrumbs-constants.d.ts.map +1 -0
  16. package/lib/browser/breadcrumbs/breadcrumbs-constants.js +28 -0
  17. package/lib/browser/breadcrumbs/breadcrumbs-constants.js.map +1 -0
  18. package/lib/browser/breadcrumbs/breadcrumbs-renderer.d.ts +61 -0
  19. package/lib/browser/breadcrumbs/breadcrumbs-renderer.d.ts.map +1 -0
  20. package/lib/browser/breadcrumbs/breadcrumbs-renderer.js +190 -0
  21. package/lib/browser/breadcrumbs/breadcrumbs-renderer.js.map +1 -0
  22. package/lib/browser/breadcrumbs/breadcrumbs-service.d.ts +48 -0
  23. package/lib/browser/breadcrumbs/breadcrumbs-service.d.ts.map +1 -0
  24. package/lib/browser/breadcrumbs/breadcrumbs-service.js +120 -0
  25. package/lib/browser/breadcrumbs/breadcrumbs-service.js.map +1 -0
  26. package/lib/browser/breadcrumbs/index.d.ts +21 -0
  27. package/lib/browser/breadcrumbs/index.d.ts.map +1 -0
  28. package/lib/browser/breadcrumbs/index.js +33 -0
  29. package/lib/browser/breadcrumbs/index.js.map +1 -0
  30. package/lib/browser/browser-clipboard-service.js +80 -144
  31. package/lib/browser/browser-clipboard-service.js.map +1 -1
  32. package/lib/browser/browser.js +20 -21
  33. package/lib/browser/browser.js.map +1 -1
  34. package/lib/browser/color-application-contribution.js +47 -87
  35. package/lib/browser/color-application-contribution.js.map +1 -1
  36. package/lib/browser/color-registry.js +34 -92
  37. package/lib/browser/color-registry.js.map +1 -1
  38. package/lib/browser/command-open-handler.js +34 -101
  39. package/lib/browser/command-open-handler.js.map +1 -1
  40. package/lib/browser/common-frontend-contribution.d.ts +8 -3
  41. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  42. package/lib/browser/common-frontend-contribution.js +466 -494
  43. package/lib/browser/common-frontend-contribution.js.map +1 -1
  44. package/lib/browser/connection-status-service.js +121 -214
  45. package/lib/browser/connection-status-service.js.map +1 -1
  46. package/lib/browser/connection-status-service.spec.js +64 -131
  47. package/lib/browser/connection-status-service.spec.js.map +1 -1
  48. package/lib/browser/context-key-service.js +19 -20
  49. package/lib/browser/context-key-service.js.map +1 -1
  50. package/lib/browser/context-menu-renderer.d.ts +6 -6
  51. package/lib/browser/context-menu-renderer.d.ts.map +1 -1
  52. package/lib/browser/context-menu-renderer.js +44 -69
  53. package/lib/browser/context-menu-renderer.js.map +1 -1
  54. package/lib/browser/core-preferences.d.ts +3 -1
  55. package/lib/browser/core-preferences.d.ts.map +1 -1
  56. package/lib/browser/core-preferences.js +57 -36
  57. package/lib/browser/core-preferences.js.map +1 -1
  58. package/lib/browser/credentials-service.js +38 -85
  59. package/lib/browser/credentials-service.js.map +1 -1
  60. package/lib/browser/decorations-service.js +75 -168
  61. package/lib/browser/decorations-service.js.map +1 -1
  62. package/lib/browser/dialogs/react-dialog.js +22 -39
  63. package/lib/browser/dialogs/react-dialog.js.map +1 -1
  64. package/lib/browser/dialogs.d.ts.map +1 -1
  65. package/lib/browser/dialogs.js +223 -365
  66. package/lib/browser/dialogs.js.map +1 -1
  67. package/lib/browser/diff-uris.d.ts.map +1 -1
  68. package/lib/browser/diff-uris.js +45 -83
  69. package/lib/browser/diff-uris.js.map +1 -1
  70. package/lib/browser/encoding-registry.js +38 -62
  71. package/lib/browser/encoding-registry.js.map +1 -1
  72. package/lib/browser/endpoint.js +78 -112
  73. package/lib/browser/endpoint.js.map +1 -1
  74. package/lib/browser/endpoint.spec.js +19 -19
  75. package/lib/browser/endpoint.spec.js.map +1 -1
  76. package/lib/browser/external-uri-service.js +20 -23
  77. package/lib/browser/external-uri-service.js.map +1 -1
  78. package/lib/browser/frontend-application-bindings.d.ts.map +1 -1
  79. package/lib/browser/frontend-application-bindings.js +6 -5
  80. package/lib/browser/frontend-application-bindings.js.map +1 -1
  81. package/lib/browser/frontend-application-config-provider.d.ts.map +1 -1
  82. package/lib/browser/frontend-application-config-provider.js +16 -19
  83. package/lib/browser/frontend-application-config-provider.js.map +1 -1
  84. package/lib/browser/frontend-application-config-provider.spec.js +9 -9
  85. package/lib/browser/frontend-application-config-provider.spec.js.map +1 -1
  86. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  87. package/lib/browser/frontend-application-module.js +130 -121
  88. package/lib/browser/frontend-application-module.js.map +1 -1
  89. package/lib/browser/frontend-application-state.js +39 -53
  90. package/lib/browser/frontend-application-state.js.map +1 -1
  91. package/lib/browser/frontend-application.js +200 -564
  92. package/lib/browser/frontend-application.js.map +1 -1
  93. package/lib/browser/http-open-handler.js +23 -69
  94. package/lib/browser/http-open-handler.js.map +1 -1
  95. package/lib/browser/i18n/i18n-frontend-module.d.ts +19 -0
  96. package/lib/browser/i18n/i18n-frontend-module.d.ts.map +1 -0
  97. package/lib/browser/i18n/i18n-frontend-module.js +24 -0
  98. package/lib/browser/i18n/i18n-frontend-module.js.map +1 -0
  99. package/lib/browser/icon-theme-contribution.js +32 -114
  100. package/lib/browser/icon-theme-contribution.js.map +1 -1
  101. package/lib/browser/icon-theme-service.js +72 -92
  102. package/lib/browser/icon-theme-service.js.map +1 -1
  103. package/lib/browser/index.d.ts +1 -0
  104. package/lib/browser/index.d.ts.map +1 -1
  105. package/lib/browser/index.js +1 -0
  106. package/lib/browser/index.js.map +1 -1
  107. package/lib/browser/json-schema-store.js +52 -146
  108. package/lib/browser/json-schema-store.js.map +1 -1
  109. package/lib/browser/keybinding.js +248 -455
  110. package/lib/browser/keybinding.js.map +1 -1
  111. package/lib/browser/keybinding.spec.js +166 -247
  112. package/lib/browser/keybinding.spec.js.map +1 -1
  113. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js +61 -134
  114. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js.map +1 -1
  115. package/lib/browser/keyboard/browser-keyboard-layout-provider.js +169 -334
  116. package/lib/browser/keyboard/browser-keyboard-layout-provider.js.map +1 -1
  117. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.js +95 -195
  118. package/lib/browser/keyboard/browser-keyboard-layout-provider.spec.js.map +1 -1
  119. package/lib/browser/keyboard/browser-keyboard-module.js +6 -6
  120. package/lib/browser/keyboard/browser-keyboard-module.js.map +1 -1
  121. package/lib/browser/keyboard/keyboard-layout-service.js +75 -128
  122. package/lib/browser/keyboard/keyboard-layout-service.js.map +1 -1
  123. package/lib/browser/keyboard/keyboard-layout-service.spec.js +86 -172
  124. package/lib/browser/keyboard/keyboard-layout-service.spec.js.map +1 -1
  125. package/lib/browser/keyboard/keys.js +106 -176
  126. package/lib/browser/keyboard/keys.js.map +1 -1
  127. package/lib/browser/keyboard/keys.spec.js +72 -90
  128. package/lib/browser/keyboard/keys.spec.js.map +1 -1
  129. package/lib/browser/keys.js +1 -1
  130. package/lib/browser/keys.js.map +1 -1
  131. package/lib/browser/label-parser.js +14 -17
  132. package/lib/browser/label-parser.js.map +1 -1
  133. package/lib/browser/label-parser.spec.js +32 -32
  134. package/lib/browser/label-parser.spec.js.map +1 -1
  135. package/lib/browser/label-provider.d.ts +2 -2
  136. package/lib/browser/label-provider.d.ts.map +1 -1
  137. package/lib/browser/label-provider.js +145 -242
  138. package/lib/browser/label-provider.js.map +1 -1
  139. package/lib/browser/label-provider.spec.js +13 -13
  140. package/lib/browser/label-provider.spec.js.map +1 -1
  141. package/lib/browser/language-service.js +13 -20
  142. package/lib/browser/language-service.js.map +1 -1
  143. package/lib/browser/logger-frontend-module.js +22 -24
  144. package/lib/browser/logger-frontend-module.js.map +1 -1
  145. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  146. package/lib/browser/menu/browser-context-menu-renderer.js +23 -43
  147. package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
  148. package/lib/browser/menu/browser-menu-module.js +6 -6
  149. package/lib/browser/menu/browser-menu-module.js.map +1 -1
  150. package/lib/browser/menu/browser-menu-plugin.d.ts +3 -0
  151. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  152. package/lib/browser/menu/browser-menu-plugin.js +284 -494
  153. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  154. package/lib/browser/menu/context-menu-context.js +18 -24
  155. package/lib/browser/menu/context-menu-context.js.map +1 -1
  156. package/lib/browser/messaging/messaging-frontend-module.d.ts.map +1 -1
  157. package/lib/browser/messaging/messaging-frontend-module.js +4 -3
  158. package/lib/browser/messaging/messaging-frontend-module.js.map +1 -1
  159. package/lib/browser/messaging/ws-connection-provider.d.ts +26 -1
  160. package/lib/browser/messaging/ws-connection-provider.d.ts.map +1 -1
  161. package/lib/browser/messaging/ws-connection-provider.js +156 -124
  162. package/lib/browser/messaging/ws-connection-provider.js.map +1 -1
  163. package/lib/browser/mime-service.js +8 -11
  164. package/lib/browser/mime-service.js.map +1 -1
  165. package/lib/browser/navigatable-types.d.ts +49 -0
  166. package/lib/browser/navigatable-types.d.ts.map +1 -0
  167. package/lib/browser/navigatable-types.js +58 -0
  168. package/lib/browser/navigatable-types.js.map +1 -0
  169. package/lib/browser/navigatable.d.ts +2 -32
  170. package/lib/browser/navigatable.d.ts.map +1 -1
  171. package/lib/browser/navigatable.js +18 -133
  172. package/lib/browser/navigatable.js.map +1 -1
  173. package/lib/browser/nls.d.ts +22 -0
  174. package/lib/browser/nls.d.ts.map +1 -0
  175. package/lib/browser/nls.js +64 -0
  176. package/lib/browser/nls.js.map +1 -0
  177. package/lib/browser/opener-service.js +44 -138
  178. package/lib/browser/opener-service.js.map +1 -1
  179. package/lib/browser/opener-service.spec.js +17 -19
  180. package/lib/browser/opener-service.spec.js.map +1 -1
  181. package/lib/browser/preferences/preference-configurations.js +34 -59
  182. package/lib/browser/preferences/preference-configurations.js.map +1 -1
  183. package/lib/browser/preferences/preference-contribution.js +169 -304
  184. package/lib/browser/preferences/preference-contribution.js.map +1 -1
  185. package/lib/browser/preferences/preference-language-override-service.js +40 -120
  186. package/lib/browser/preferences/preference-language-override-service.js.map +1 -1
  187. package/lib/browser/preferences/preference-provider.js +77 -130
  188. package/lib/browser/preferences/preference-provider.js.map +1 -1
  189. package/lib/browser/preferences/preference-proxy.js +71 -150
  190. package/lib/browser/preferences/preference-proxy.js.map +1 -1
  191. package/lib/browser/preferences/preference-proxy.spec.js +195 -330
  192. package/lib/browser/preferences/preference-proxy.spec.js.map +1 -1
  193. package/lib/browser/preferences/preference-schema-provider.spec.js +29 -79
  194. package/lib/browser/preferences/preference-schema-provider.spec.js.map +1 -1
  195. package/lib/browser/preferences/preference-scope.js +1 -1
  196. package/lib/browser/preferences/preference-scope.js.map +1 -1
  197. package/lib/browser/preferences/preference-service.js +206 -402
  198. package/lib/browser/preferences/preference-service.js.map +1 -1
  199. package/lib/browser/preferences/preference-service.spec.js +282 -485
  200. package/lib/browser/preferences/preference-service.spec.js.map +1 -1
  201. package/lib/browser/preferences/test/mock-preference-provider.js +19 -35
  202. package/lib/browser/preferences/test/mock-preference-provider.js.map +1 -1
  203. package/lib/browser/preferences/test/mock-preference-proxy.js +6 -6
  204. package/lib/browser/preferences/test/mock-preference-proxy.js.map +1 -1
  205. package/lib/browser/preferences/test/mock-preference-service.js +24 -25
  206. package/lib/browser/preferences/test/mock-preference-service.js.map +1 -1
  207. package/lib/browser/progress-bar.js +38 -40
  208. package/lib/browser/progress-bar.js.map +1 -1
  209. package/lib/browser/progress-client.js +24 -27
  210. package/lib/browser/progress-client.js.map +1 -1
  211. package/lib/browser/progress-location-service.js +46 -93
  212. package/lib/browser/progress-location-service.js.map +1 -1
  213. package/lib/browser/progress-location-service.spec.js +26 -59
  214. package/lib/browser/progress-location-service.spec.js.map +1 -1
  215. package/lib/browser/progress-status-bar-item.js +37 -86
  216. package/lib/browser/progress-status-bar-item.js.map +1 -1
  217. package/lib/browser/quick-input/quick-command-frontend-contribution.js +28 -32
  218. package/lib/browser/quick-input/quick-command-frontend-contribution.js.map +1 -1
  219. package/lib/browser/quick-input/quick-command-service.d.ts.map +1 -1
  220. package/lib/browser/quick-input/quick-command-service.js +104 -127
  221. package/lib/browser/quick-input/quick-command-service.js.map +1 -1
  222. package/lib/browser/quick-input/quick-help-service.js +54 -108
  223. package/lib/browser/quick-input/quick-help-service.js.map +1 -1
  224. package/lib/browser/quick-input/quick-input-frontend-contribution.js +16 -19
  225. package/lib/browser/quick-input/quick-input-frontend-contribution.js.map +1 -1
  226. package/lib/browser/quick-input/quick-input-service.d.ts +4 -0
  227. package/lib/browser/quick-input/quick-input-service.d.ts.map +1 -1
  228. package/lib/browser/quick-input/quick-input-service.js +22 -54
  229. package/lib/browser/quick-input/quick-input-service.js.map +1 -1
  230. package/lib/browser/quick-input/quick-input-service.spec.js +30 -30
  231. package/lib/browser/quick-input/quick-input-service.spec.js.map +1 -1
  232. package/lib/browser/quick-input/quick-pick-service-impl.js +29 -72
  233. package/lib/browser/quick-input/quick-pick-service-impl.js.map +1 -1
  234. package/lib/browser/quick-input/quick-view-service.js +40 -47
  235. package/lib/browser/quick-input/quick-view-service.js.map +1 -1
  236. package/lib/browser/resource-context-key.js +36 -61
  237. package/lib/browser/resource-context-key.js.map +1 -1
  238. package/lib/browser/saveable.d.ts +2 -2
  239. package/lib/browser/saveable.d.ts.map +1 -1
  240. package/lib/browser/saveable.js +84 -220
  241. package/lib/browser/saveable.js.map +1 -1
  242. package/lib/browser/shell/application-shell-mouse-tracker.js +38 -50
  243. package/lib/browser/shell/application-shell-mouse-tracker.js.map +1 -1
  244. package/lib/browser/shell/application-shell.d.ts +10 -3
  245. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  246. package/lib/browser/shell/application-shell.js +733 -990
  247. package/lib/browser/shell/application-shell.js.map +1 -1
  248. package/lib/browser/shell/index.d.ts +1 -1
  249. package/lib/browser/shell/index.d.ts.map +1 -1
  250. package/lib/browser/shell/index.js +1 -1
  251. package/lib/browser/shell/index.js.map +1 -1
  252. package/lib/browser/shell/shell-layout-restorer.js +204 -428
  253. package/lib/browser/shell/shell-layout-restorer.js.map +1 -1
  254. package/lib/browser/shell/side-panel-handler.d.ts +27 -4
  255. package/lib/browser/shell/side-panel-handler.d.ts.map +1 -1
  256. package/lib/browser/shell/side-panel-handler.js +235 -247
  257. package/lib/browser/shell/side-panel-handler.js.map +1 -1
  258. package/lib/browser/shell/side-panel-toolbar.js +44 -65
  259. package/lib/browser/shell/side-panel-toolbar.js.map +1 -1
  260. package/lib/browser/shell/sidebar-bottom-menu-widget.d.ts +3 -18
  261. package/lib/browser/shell/sidebar-bottom-menu-widget.d.ts.map +1 -1
  262. package/lib/browser/shell/sidebar-bottom-menu-widget.js +14 -66
  263. package/lib/browser/shell/sidebar-bottom-menu-widget.js.map +1 -1
  264. package/lib/browser/shell/sidebar-menu-widget.d.ts +41 -0
  265. package/lib/browser/shell/sidebar-menu-widget.d.ts.map +1 -0
  266. package/lib/browser/shell/sidebar-menu-widget.js +83 -0
  267. package/lib/browser/shell/sidebar-menu-widget.js.map +1 -0
  268. package/lib/browser/shell/sidebar-top-menu-widget.d.ts +22 -0
  269. package/lib/browser/shell/sidebar-top-menu-widget.d.ts.map +1 -0
  270. package/lib/browser/shell/sidebar-top-menu-widget.js +36 -0
  271. package/lib/browser/shell/sidebar-top-menu-widget.js.map +1 -0
  272. package/lib/browser/shell/split-panels.js +40 -53
  273. package/lib/browser/shell/split-panels.js.map +1 -1
  274. package/lib/browser/shell/tab-bar-decorator.js +25 -50
  275. package/lib/browser/shell/tab-bar-decorator.js.map +1 -1
  276. package/lib/browser/shell/tab-bar-toolbar.d.ts.map +1 -1
  277. package/lib/browser/shell/tab-bar-toolbar.js +178 -288
  278. package/lib/browser/shell/tab-bar-toolbar.js.map +1 -1
  279. package/lib/browser/shell/tab-bar-toolbar.spec.js +12 -12
  280. package/lib/browser/shell/tab-bar-toolbar.spec.js.map +1 -1
  281. package/lib/browser/shell/tab-bars.d.ts +9 -3
  282. package/lib/browser/shell/tab-bars.d.ts.map +1 -1
  283. package/lib/browser/shell/tab-bars.js +381 -444
  284. package/lib/browser/shell/tab-bars.js.map +1 -1
  285. package/lib/browser/shell/tab-bars.spec.js +17 -18
  286. package/lib/browser/shell/tab-bars.spec.js.map +1 -1
  287. package/lib/browser/shell/theia-dock-panel.d.ts +8 -1
  288. package/lib/browser/shell/theia-dock-panel.d.ts.map +1 -1
  289. package/lib/browser/shell/theia-dock-panel.js +140 -121
  290. package/lib/browser/shell/theia-dock-panel.js.map +1 -1
  291. package/lib/browser/shell/view-contribution.js +92 -193
  292. package/lib/browser/shell/view-contribution.js.map +1 -1
  293. package/lib/browser/source-tree/source-tree-widget.js +65 -91
  294. package/lib/browser/source-tree/source-tree-widget.js.map +1 -1
  295. package/lib/browser/source-tree/source-tree.js +37 -122
  296. package/lib/browser/source-tree/source-tree.js.map +1 -1
  297. package/lib/browser/source-tree/tree-source.js +15 -17
  298. package/lib/browser/source-tree/tree-source.js.map +1 -1
  299. package/lib/browser/status-bar/status-bar.d.ts.map +1 -1
  300. package/lib/browser/status-bar/status-bar.js +84 -208
  301. package/lib/browser/status-bar/status-bar.js.map +1 -1
  302. package/lib/browser/storage-service.js +61 -107
  303. package/lib/browser/storage-service.js.map +1 -1
  304. package/lib/browser/storage-service.spec.js +35 -97
  305. package/lib/browser/storage-service.spec.js.map +1 -1
  306. package/lib/browser/test/jsdom.js +7 -7
  307. package/lib/browser/test/jsdom.js.map +1 -1
  308. package/lib/browser/test/mock-connection-status-service.js +11 -31
  309. package/lib/browser/test/mock-connection-status-service.js.map +1 -1
  310. package/lib/browser/test/mock-env-variables-server.js +16 -57
  311. package/lib/browser/test/mock-env-variables-server.js.map +1 -1
  312. package/lib/browser/test/mock-opener-service.js +11 -58
  313. package/lib/browser/test/mock-opener-service.js.map +1 -1
  314. package/lib/browser/test/mock-storage-service.js +13 -14
  315. package/lib/browser/test/mock-storage-service.js.map +1 -1
  316. package/lib/browser/theming.js +97 -163
  317. package/lib/browser/theming.js.map +1 -1
  318. package/lib/browser/tree/fuzzy-search.js +30 -94
  319. package/lib/browser/tree/fuzzy-search.js.map +1 -1
  320. package/lib/browser/tree/fuzzy-search.spec.js +19 -95
  321. package/lib/browser/tree/fuzzy-search.spec.js.map +1 -1
  322. package/lib/browser/tree/search-box-debounce.js +18 -24
  323. package/lib/browser/tree/search-box-debounce.js.map +1 -1
  324. package/lib/browser/tree/search-box.js +112 -180
  325. package/lib/browser/tree/search-box.js.map +1 -1
  326. package/lib/browser/tree/test/mock-tree-model.js +16 -16
  327. package/lib/browser/tree/test/mock-tree-model.js.map +1 -1
  328. package/lib/browser/tree/test/tree-test-container.js +13 -13
  329. package/lib/browser/tree/test/tree-test-container.js.map +1 -1
  330. package/lib/browser/tree/tree-consistency.spec.js +60 -140
  331. package/lib/browser/tree/tree-consistency.spec.js.map +1 -1
  332. package/lib/browser/tree/tree-container.js +19 -32
  333. package/lib/browser/tree/tree-container.js.map +1 -1
  334. package/lib/browser/tree/tree-decorator.js +49 -194
  335. package/lib/browser/tree/tree-decorator.js.map +1 -1
  336. package/lib/browser/tree/tree-decorator.spec.js +23 -54
  337. package/lib/browser/tree/tree-decorator.spec.js.map +1 -1
  338. package/lib/browser/tree/tree-expansion.js +71 -181
  339. package/lib/browser/tree/tree-expansion.js.map +1 -1
  340. package/lib/browser/tree/tree-expansion.spec.js +74 -145
  341. package/lib/browser/tree/tree-expansion.spec.js.map +1 -1
  342. package/lib/browser/tree/tree-iterator.js +88 -237
  343. package/lib/browser/tree/tree-iterator.js.map +1 -1
  344. package/lib/browser/tree/tree-iterator.spec.js +60 -84
  345. package/lib/browser/tree/tree-iterator.spec.js.map +1 -1
  346. package/lib/browser/tree/tree-label-provider.js +15 -18
  347. package/lib/browser/tree/tree-label-provider.js.map +1 -1
  348. package/lib/browser/tree/tree-model.js +223 -439
  349. package/lib/browser/tree/tree-model.js.map +1 -1
  350. package/lib/browser/tree/tree-navigation.js +21 -30
  351. package/lib/browser/tree/tree-navigation.js.map +1 -1
  352. package/lib/browser/tree/tree-search.js +86 -165
  353. package/lib/browser/tree/tree-search.js.map +1 -1
  354. package/lib/browser/tree/tree-selection-impl.js +82 -128
  355. package/lib/browser/tree/tree-selection-impl.js.map +1 -1
  356. package/lib/browser/tree/tree-selection-state.js +86 -158
  357. package/lib/browser/tree/tree-selection-state.js.map +1 -1
  358. package/lib/browser/tree/tree-selection-state.spec.js +40 -40
  359. package/lib/browser/tree/tree-selection-state.spec.js.map +1 -1
  360. package/lib/browser/tree/tree-selection.js +3 -3
  361. package/lib/browser/tree/tree-selection.js.map +1 -1
  362. package/lib/browser/tree/tree-view-welcome-widget.js +112 -214
  363. package/lib/browser/tree/tree-view-welcome-widget.js.map +1 -1
  364. package/lib/browser/tree/tree-widget-selection.js +2 -2
  365. package/lib/browser/tree/tree-widget-selection.js.map +1 -1
  366. package/lib/browser/tree/tree-widget.d.ts +3 -2
  367. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  368. package/lib/browser/tree/tree-widget.js +475 -676
  369. package/lib/browser/tree/tree-widget.js.map +1 -1
  370. package/lib/browser/tree/tree.js +117 -245
  371. package/lib/browser/tree/tree.js.map +1 -1
  372. package/lib/browser/tree/tree.spec.js +118 -43
  373. package/lib/browser/tree/tree.spec.js.map +1 -1
  374. package/lib/browser/view-container.d.ts +11 -6
  375. package/lib/browser/view-container.d.ts.map +1 -1
  376. package/lib/browser/view-container.js +602 -832
  377. package/lib/browser/view-container.js.map +1 -1
  378. package/lib/browser/widget-decoration.js +17 -17
  379. package/lib/browser/widget-decoration.js.map +1 -1
  380. package/lib/browser/widget-manager.js +87 -218
  381. package/lib/browser/widget-manager.js.map +1 -1
  382. package/lib/browser/widget-manager.spec.js +30 -84
  383. package/lib/browser/widget-manager.spec.js.map +1 -1
  384. package/lib/browser/widget-open-handler.js +71 -160
  385. package/lib/browser/widget-open-handler.js.map +1 -1
  386. package/lib/browser/widgets/alert-message.d.ts.map +1 -1
  387. package/lib/browser/widgets/alert-message.js +12 -29
  388. package/lib/browser/widgets/alert-message.js.map +1 -1
  389. package/lib/browser/widgets/react-renderer.d.ts +3 -1
  390. package/lib/browser/widgets/react-renderer.d.ts.map +1 -1
  391. package/lib/browser/widgets/react-renderer.js +22 -18
  392. package/lib/browser/widgets/react-renderer.js.map +1 -1
  393. package/lib/browser/widgets/react-widget.js +23 -40
  394. package/lib/browser/widgets/react-widget.js.map +1 -1
  395. package/lib/browser/widgets/widget.d.ts +27 -0
  396. package/lib/browser/widgets/widget.d.ts.map +1 -1
  397. package/lib/browser/widgets/widget.js +161 -245
  398. package/lib/browser/widgets/widget.js.map +1 -1
  399. package/lib/browser/window/browser-window-module.js +7 -7
  400. package/lib/browser/window/browser-window-module.js.map +1 -1
  401. package/lib/browser/window/default-window-service.d.ts +1 -0
  402. package/lib/browser/window/default-window-service.d.ts.map +1 -1
  403. package/lib/browser/window/default-window-service.js +47 -71
  404. package/lib/browser/window/default-window-service.js.map +1 -1
  405. package/lib/browser/window/default-window-service.spec.js +29 -30
  406. package/lib/browser/window/default-window-service.spec.js.map +1 -1
  407. package/lib/browser/window/test/mock-window-service.d.ts +1 -0
  408. package/lib/browser/window/test/mock-window-service.d.ts.map +1 -1
  409. package/lib/browser/window/test/mock-window-service.js +11 -17
  410. package/lib/browser/window/test/mock-window-service.js.map +1 -1
  411. package/lib/browser/window/window-service.d.ts +9 -0
  412. package/lib/browser/window/window-service.d.ts.map +1 -1
  413. package/lib/browser/window/window-service.js +5 -1
  414. package/lib/browser/window/window-service.js.map +1 -1
  415. package/lib/browser/window-contribution.d.ts +30 -0
  416. package/lib/browser/window-contribution.d.ts.map +1 -0
  417. package/lib/browser/window-contribution.js +71 -0
  418. package/lib/browser/window-contribution.js.map +1 -0
  419. package/lib/common/application-error.js +18 -60
  420. package/lib/common/application-error.js.map +1 -1
  421. package/lib/common/buffer.js +65 -132
  422. package/lib/common/buffer.js.map +1 -1
  423. package/lib/common/cancellation.js +35 -51
  424. package/lib/common/cancellation.js.map +1 -1
  425. package/lib/common/command.d.ts +4 -0
  426. package/lib/common/command.d.ts.map +1 -1
  427. package/lib/common/command.js +133 -314
  428. package/lib/common/command.js.map +1 -1
  429. package/lib/common/command.spec.js +116 -212
  430. package/lib/common/command.spec.js.map +1 -1
  431. package/lib/common/contribution-filter/contribution-filter-registry.js +30 -82
  432. package/lib/common/contribution-filter/contribution-filter-registry.js.map +1 -1
  433. package/lib/common/contribution-provider.js +15 -58
  434. package/lib/common/contribution-provider.js.map +1 -1
  435. package/lib/common/disposable.js +31 -49
  436. package/lib/common/disposable.js.map +1 -1
  437. package/lib/common/encoding-service.js +229 -320
  438. package/lib/common/encoding-service.js.map +1 -1
  439. package/lib/common/event.js +173 -395
  440. package/lib/common/event.js.map +1 -1
  441. package/lib/common/event.spec.js +7 -7
  442. package/lib/common/event.spec.js.map +1 -1
  443. package/lib/common/i18n/localization.d.ts +33 -0
  444. package/lib/common/i18n/localization.d.ts.map +1 -0
  445. package/lib/common/i18n/localization.js +21 -0
  446. package/lib/common/i18n/localization.js.map +1 -0
  447. package/lib/common/index.js +1 -1
  448. package/lib/common/index.js.map +1 -1
  449. package/lib/common/keybinding.js +1 -3
  450. package/lib/common/keybinding.js.map +1 -1
  451. package/lib/common/logger-protocol.js +18 -61
  452. package/lib/common/logger-protocol.js.map +1 -1
  453. package/lib/common/logger-watcher.js +17 -22
  454. package/lib/common/logger-watcher.js.map +1 -1
  455. package/lib/common/logger.js +92 -165
  456. package/lib/common/logger.js.map +1 -1
  457. package/lib/common/logger.spec.js +12 -12
  458. package/lib/common/logger.spec.js.map +1 -1
  459. package/lib/common/lsp-types.js +1 -1
  460. package/lib/common/lsp-types.js.map +1 -1
  461. package/lib/common/menu.js +103 -189
  462. package/lib/common/menu.js.map +1 -1
  463. package/lib/common/menu.spec.js +18 -38
  464. package/lib/common/menu.spec.js.map +1 -1
  465. package/lib/common/message-service-protocol.js +12 -15
  466. package/lib/common/message-service-protocol.js.map +1 -1
  467. package/lib/common/message-service.d.ts +1 -0
  468. package/lib/common/message-service.d.ts.map +1 -1
  469. package/lib/common/message-service.js +56 -125
  470. package/lib/common/message-service.js.map +1 -1
  471. package/lib/common/messaging/abstract-connection-provider.js +37 -51
  472. package/lib/common/messaging/abstract-connection-provider.js.map +1 -1
  473. package/lib/common/messaging/connection-error-handler.js +10 -22
  474. package/lib/common/messaging/connection-error-handler.js.map +1 -1
  475. package/lib/common/messaging/proxy-factory.js +83 -184
  476. package/lib/common/messaging/proxy-factory.js.map +1 -1
  477. package/lib/common/messaging/proxy-factory.spec.js +51 -71
  478. package/lib/common/messaging/proxy-factory.spec.js.map +1 -1
  479. package/lib/common/messaging/web-socket-channel.js +45 -72
  480. package/lib/common/messaging/web-socket-channel.js.map +1 -1
  481. package/lib/common/objects.js +8 -8
  482. package/lib/common/objects.js.map +1 -1
  483. package/lib/common/os.js +3 -27
  484. package/lib/common/os.js.map +1 -1
  485. package/lib/common/path.js +74 -88
  486. package/lib/common/path.js.map +1 -1
  487. package/lib/common/path.spec.js +97 -187
  488. package/lib/common/path.spec.js.map +1 -1
  489. package/lib/common/preferences/preference-schema.js +3 -4
  490. package/lib/common/preferences/preference-schema.js.map +1 -1
  491. package/lib/common/preferences/preference-scope.js +9 -31
  492. package/lib/common/preferences/preference-scope.js.map +1 -1
  493. package/lib/common/progress-service.js +62 -128
  494. package/lib/common/progress-service.js.map +1 -1
  495. package/lib/common/promise-util.d.ts +1 -0
  496. package/lib/common/promise-util.d.ts.map +1 -1
  497. package/lib/common/promise-util.js +37 -91
  498. package/lib/common/promise-util.js.map +1 -1
  499. package/lib/common/reference.js +95 -217
  500. package/lib/common/reference.js.map +1 -1
  501. package/lib/common/reference.spec.js +100 -226
  502. package/lib/common/reference.spec.js.map +1 -1
  503. package/lib/common/resource.js +133 -279
  504. package/lib/common/resource.js.map +1 -1
  505. package/lib/common/selection-command-handler.js +36 -109
  506. package/lib/common/selection-command-handler.js.map +1 -1
  507. package/lib/common/selection-service.js +15 -20
  508. package/lib/common/selection-service.js.map +1 -1
  509. package/lib/common/selection-service.spec.js +9 -9
  510. package/lib/common/selection-service.spec.js.map +1 -1
  511. package/lib/common/selection.js +2 -2
  512. package/lib/common/selection.js.map +1 -1
  513. package/lib/common/severity.js +6 -6
  514. package/lib/common/severity.js.map +1 -1
  515. package/lib/common/stream.js +84 -132
  516. package/lib/common/stream.js.map +1 -1
  517. package/lib/common/strings.js +31 -78
  518. package/lib/common/strings.js.map +1 -1
  519. package/lib/common/ternary-search-tree.js +87 -112
  520. package/lib/common/ternary-search-tree.js.map +1 -1
  521. package/lib/common/test/expect.js +11 -86
  522. package/lib/common/test/expect.js.map +1 -1
  523. package/lib/common/test/mock-logger.js +54 -85
  524. package/lib/common/test/mock-logger.js.map +1 -1
  525. package/lib/common/test/mock-menu.js +12 -29
  526. package/lib/common/test/mock-menu.js.map +1 -1
  527. package/lib/common/test/mock-resource-provider.js +15 -57
  528. package/lib/common/test/mock-resource-provider.js.map +1 -1
  529. package/lib/common/types.js +14 -72
  530. package/lib/common/types.js.map +1 -1
  531. package/lib/common/types.spec.js +48 -72
  532. package/lib/common/types.spec.js.map +1 -1
  533. package/lib/common/uri-command-handler.js +32 -77
  534. package/lib/common/uri-command-handler.js.map +1 -1
  535. package/lib/common/uri-command-handler.spec.js +38 -72
  536. package/lib/common/uri-command-handler.spec.js.map +1 -1
  537. package/lib/common/uri.js +100 -147
  538. package/lib/common/uri.js.map +1 -1
  539. package/lib/common/uri.spec.js +89 -89
  540. package/lib/common/uri.spec.js.map +1 -1
  541. package/lib/electron-browser/electron-clipboard-service.js +11 -14
  542. package/lib/electron-browser/electron-clipboard-service.js.map +1 -1
  543. package/lib/electron-browser/keyboard/electron-keyboard-layout-change-notifier.js +21 -27
  544. package/lib/electron-browser/keyboard/electron-keyboard-layout-change-notifier.js.map +1 -1
  545. package/lib/electron-browser/keyboard/electron-keyboard-module.js +6 -8
  546. package/lib/electron-browser/keyboard/electron-keyboard-module.js.map +1 -1
  547. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  548. package/lib/electron-browser/menu/electron-context-menu-renderer.js +53 -97
  549. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  550. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +2 -1
  551. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts.map +1 -1
  552. package/lib/electron-browser/menu/electron-main-menu-factory.js +127 -220
  553. package/lib/electron-browser/menu/electron-main-menu-factory.js.map +1 -1
  554. package/lib/electron-browser/menu/electron-menu-contribution.d.ts +4 -2
  555. package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
  556. package/lib/electron-browser/menu/electron-menu-contribution.js +82 -89
  557. package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
  558. package/lib/electron-browser/menu/electron-menu-module.js +9 -31
  559. package/lib/electron-browser/menu/electron-menu-module.js.map +1 -1
  560. package/lib/electron-browser/messaging/electron-ipc-connection-provider.js +22 -39
  561. package/lib/electron-browser/messaging/electron-ipc-connection-provider.js.map +1 -1
  562. package/lib/electron-browser/messaging/electron-messaging-frontend-module.js +6 -6
  563. package/lib/electron-browser/messaging/electron-messaging-frontend-module.js.map +1 -1
  564. package/lib/electron-browser/messaging/electron-ws-connection-provider.js +21 -79
  565. package/lib/electron-browser/messaging/electron-ws-connection-provider.js.map +1 -1
  566. package/lib/electron-browser/token/electron-token-frontend-module.js +4 -4
  567. package/lib/electron-browser/token/electron-token-frontend-module.js.map +1 -1
  568. package/lib/electron-browser/window/electron-window-module.js +11 -13
  569. package/lib/electron-browser/window/electron-window-module.js.map +1 -1
  570. package/lib/electron-browser/window/electron-window-preferences.js +7 -11
  571. package/lib/electron-browser/window/electron-window-preferences.js.map +1 -1
  572. package/lib/electron-browser/window/electron-window-service.d.ts +1 -0
  573. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  574. package/lib/electron-browser/window/electron-window-service.js +59 -75
  575. package/lib/electron-browser/window/electron-window-service.js.map +1 -1
  576. package/lib/electron-common/electron-main-window-service.d.ts +1 -0
  577. package/lib/electron-common/electron-main-window-service.d.ts.map +1 -1
  578. package/lib/electron-main/electron-main-application-module.js +15 -17
  579. package/lib/electron-main/electron-main-application-module.js.map +1 -1
  580. package/lib/electron-main/electron-main-application.d.ts +1 -1
  581. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  582. package/lib/electron-main/electron-main-application.js +273 -543
  583. package/lib/electron-main/electron-main-application.js.map +1 -1
  584. package/lib/electron-main/electron-main-window-service-impl.d.ts +1 -0
  585. package/lib/electron-main/electron-main-window-service-impl.d.ts.map +1 -1
  586. package/lib/electron-main/electron-main-window-service-impl.js +18 -19
  587. package/lib/electron-main/electron-main-window-service-impl.js.map +1 -1
  588. package/lib/electron-main/electron-native-keymap.js +14 -39
  589. package/lib/electron-main/electron-native-keymap.js.map +1 -1
  590. package/lib/electron-main/electron-security-token-service.js +19 -67
  591. package/lib/electron-main/electron-security-token-service.js.map +1 -1
  592. package/lib/electron-main/messaging/electron-messaging-contribution.js +72 -121
  593. package/lib/electron-main/messaging/electron-messaging-contribution.js.map +1 -1
  594. package/lib/electron-node/hosting/electron-backend-hosting-module.js +4 -4
  595. package/lib/electron-node/hosting/electron-backend-hosting-module.js.map +1 -1
  596. package/lib/electron-node/hosting/electron-ws-origin-validator.js +8 -11
  597. package/lib/electron-node/hosting/electron-ws-origin-validator.js.map +1 -1
  598. package/lib/electron-node/keyboard/electron-backend-keyboard-module.js +6 -10
  599. package/lib/electron-node/keyboard/electron-backend-keyboard-module.js.map +1 -1
  600. package/lib/electron-node/keyboard/electron-keyboard-layout-provider.js +11 -14
  601. package/lib/electron-node/keyboard/electron-keyboard-layout-provider.js.map +1 -1
  602. package/lib/electron-node/token/electron-token-backend-contribution.js +16 -19
  603. package/lib/electron-node/token/electron-token-backend-contribution.js.map +1 -1
  604. package/lib/electron-node/token/electron-token-backend-module.js +6 -6
  605. package/lib/electron-node/token/electron-token-backend-module.js.map +1 -1
  606. package/lib/electron-node/token/electron-token-messaging-contribution.js +16 -34
  607. package/lib/electron-node/token/electron-token-messaging-contribution.js.map +1 -1
  608. package/lib/electron-node/token/electron-token-validator.js +29 -32
  609. package/lib/electron-node/token/electron-token-validator.js.map +1 -1
  610. package/lib/node/application-server.js +25 -68
  611. package/lib/node/application-server.js.map +1 -1
  612. package/lib/node/backend-application-config-provider.d.ts.map +1 -1
  613. package/lib/node/backend-application-config-provider.js +16 -19
  614. package/lib/node/backend-application-config-provider.js.map +1 -1
  615. package/lib/node/backend-application-config-provider.spec.js +5 -5
  616. package/lib/node/backend-application-config-provider.spec.js.map +1 -1
  617. package/lib/node/backend-application-module.js +32 -44
  618. package/lib/node/backend-application-module.js.map +1 -1
  619. package/lib/node/backend-application.js +180 -458
  620. package/lib/node/backend-application.js.map +1 -1
  621. package/lib/node/cli.js +30 -121
  622. package/lib/node/cli.js.map +1 -1
  623. package/lib/node/cli.spec.js +63 -168
  624. package/lib/node/cli.spec.js.map +1 -1
  625. package/lib/node/console-logger-server.js +52 -136
  626. package/lib/node/console-logger-server.js.map +1 -1
  627. package/lib/node/console-logger-server.spec.js +31 -105
  628. package/lib/node/console-logger-server.spec.js.map +1 -1
  629. package/lib/node/debug.js +1 -3
  630. package/lib/node/debug.js.map +1 -1
  631. package/lib/node/dynamic-require.js +1 -1
  632. package/lib/node/dynamic-require.js.map +1 -1
  633. package/lib/node/env-variables/env-variables-server.js +51 -152
  634. package/lib/node/env-variables/env-variables-server.js.map +1 -1
  635. package/lib/node/environment-utils.js +25 -99
  636. package/lib/node/environment-utils.js.map +1 -1
  637. package/lib/node/environment-utils.spec.js +26 -55
  638. package/lib/node/environment-utils.spec.js.map +1 -1
  639. package/lib/node/file-uri.js +6 -6
  640. package/lib/node/file-uri.js.map +1 -1
  641. package/lib/node/file-uri.spec.js +27 -27
  642. package/lib/node/file-uri.spec.js.map +1 -1
  643. package/lib/node/hosting/backend-application-hosts.js +29 -35
  644. package/lib/node/hosting/backend-application-hosts.js.map +1 -1
  645. package/lib/node/hosting/backend-hosting-module.js +5 -5
  646. package/lib/node/hosting/backend-hosting-module.js.map +1 -1
  647. package/lib/node/hosting/ws-origin-validator.js +15 -18
  648. package/lib/node/hosting/ws-origin-validator.js.map +1 -1
  649. package/lib/node/i18n/i18n-backend-module.d.ts +19 -0
  650. package/lib/node/i18n/i18n-backend-module.d.ts.map +1 -0
  651. package/lib/node/i18n/i18n-backend-module.js +33 -0
  652. package/lib/node/i18n/i18n-backend-module.js.map +1 -0
  653. package/lib/node/i18n/localization-backend-contribution.d.ts +26 -0
  654. package/lib/node/i18n/localization-backend-contribution.d.ts.map +1 -0
  655. package/lib/node/i18n/localization-backend-contribution.js +56 -0
  656. package/lib/node/i18n/localization-backend-contribution.js.map +1 -0
  657. package/lib/node/i18n/localization-contribution.d.ts +33 -0
  658. package/lib/node/i18n/localization-contribution.d.ts.map +1 -0
  659. package/lib/node/i18n/localization-contribution.js +105 -0
  660. package/lib/node/i18n/localization-contribution.js.map +1 -0
  661. package/lib/node/i18n/localization-provider.d.ts +26 -0
  662. package/lib/node/i18n/localization-provider.d.ts.map +1 -0
  663. package/lib/node/i18n/localization-provider.js +73 -0
  664. package/lib/node/i18n/localization-provider.js.map +1 -0
  665. package/lib/node/keytar-server.js +62 -144
  666. package/lib/node/keytar-server.js.map +1 -1
  667. package/lib/node/logger-backend-module.js +30 -38
  668. package/lib/node/logger-backend-module.js.map +1 -1
  669. package/lib/node/logger-cli-contribution.js +89 -220
  670. package/lib/node/logger-cli-contribution.js.map +1 -1
  671. package/lib/node/logger-cli-contribution.spec.js +161 -281
  672. package/lib/node/logger-cli-contribution.spec.js.map +1 -1
  673. package/lib/node/main.js +5 -50
  674. package/lib/node/main.js.map +1 -1
  675. package/lib/node/messaging/connection-container-module.js +15 -17
  676. package/lib/node/messaging/connection-container-module.js.map +1 -1
  677. package/lib/node/messaging/http-websocket-adapter.d.ts +41 -0
  678. package/lib/node/messaging/http-websocket-adapter.d.ts.map +1 -0
  679. package/lib/node/messaging/http-websocket-adapter.js +105 -0
  680. package/lib/node/messaging/http-websocket-adapter.js.map +1 -0
  681. package/lib/node/messaging/ipc-bootstrap.js +10 -10
  682. package/lib/node/messaging/ipc-bootstrap.js.map +1 -1
  683. package/lib/node/messaging/ipc-connection-provider.js +49 -66
  684. package/lib/node/messaging/ipc-connection-provider.js.map +1 -1
  685. package/lib/node/messaging/ipc-protocol.js +12 -34
  686. package/lib/node/messaging/ipc-protocol.js.map +1 -1
  687. package/lib/node/messaging/logger.js +10 -13
  688. package/lib/node/messaging/logger.js.map +1 -1
  689. package/lib/node/messaging/messaging-backend-module.d.ts.map +1 -1
  690. package/lib/node/messaging/messaging-backend-module.js +14 -11
  691. package/lib/node/messaging/messaging-backend-module.js.map +1 -1
  692. package/lib/node/messaging/messaging-contribution.d.ts +7 -2
  693. package/lib/node/messaging/messaging-contribution.d.ts.map +1 -1
  694. package/lib/node/messaging/messaging-contribution.js +181 -237
  695. package/lib/node/messaging/messaging-contribution.js.map +1 -1
  696. package/lib/node/messaging/messaging-listeners.js +15 -66
  697. package/lib/node/messaging/messaging-listeners.js.map +1 -1
  698. package/lib/node/messaging/messaging-service.js +2 -2
  699. package/lib/node/messaging/messaging-service.js.map +1 -1
  700. package/lib/node/messaging/test/test-web-socket-channel.js +14 -37
  701. package/lib/node/messaging/test/test-web-socket-channel.js.map +1 -1
  702. package/lib/node/process-utils.js +41 -88
  703. package/lib/node/process-utils.js.map +1 -1
  704. package/lib/node/process-utils.spec.js +19 -11
  705. package/lib/node/process-utils.spec.js.map +1 -1
  706. package/lib/node/ws-request-validators.js +21 -80
  707. package/lib/node/ws-request-validators.js.map +1 -1
  708. package/package.json +9 -5
  709. package/src/browser/breadcrumbs/breadcrumb-popup-container.ts +101 -0
  710. package/src/browser/breadcrumbs/breadcrumb-renderer.tsx +41 -0
  711. package/src/browser/breadcrumbs/breadcrumbs-constants.ts +79 -0
  712. package/src/browser/breadcrumbs/breadcrumbs-renderer.tsx +187 -0
  713. package/src/browser/breadcrumbs/breadcrumbs-service.ts +108 -0
  714. package/src/browser/breadcrumbs/index.ts +21 -0
  715. package/src/browser/common-frontend-contribution.ts +115 -13
  716. package/src/browser/context-menu-renderer.ts +10 -2
  717. package/src/browser/core-preferences.ts +53 -29
  718. package/src/browser/dialogs.ts +3 -3
  719. package/src/browser/diff-uris.ts +2 -1
  720. package/src/browser/frontend-application-bindings.ts +2 -1
  721. package/src/browser/frontend-application-config-provider.ts +2 -2
  722. package/src/browser/frontend-application-module.ts +47 -15
  723. package/src/browser/i18n/i18n-frontend-module.ts +25 -0
  724. package/src/browser/index.ts +1 -0
  725. package/src/browser/label-provider.ts +3 -2
  726. package/src/browser/menu/browser-context-menu-renderer.ts +2 -2
  727. package/src/browser/menu/browser-menu-plugin.ts +28 -5
  728. package/src/browser/messaging/messaging-frontend-module.ts +2 -1
  729. package/src/browser/messaging/ws-connection-provider.ts +113 -6
  730. package/src/browser/navigatable-types.ts +78 -0
  731. package/src/browser/navigatable.ts +2 -61
  732. package/src/browser/nls.ts +65 -0
  733. package/src/browser/progress-status-bar-item.ts +1 -1
  734. package/src/browser/quick-input/quick-command-service.ts +10 -1
  735. package/src/browser/quick-input/quick-input-service.ts +4 -0
  736. package/src/browser/saveable.ts +2 -2
  737. package/src/browser/shell/application-shell.ts +43 -15
  738. package/src/browser/shell/index.ts +1 -1
  739. package/src/browser/shell/side-panel-handler.ts +44 -7
  740. package/src/browser/shell/sidebar-bottom-menu-widget.tsx +13 -63
  741. package/src/browser/shell/sidebar-menu-widget.tsx +93 -0
  742. package/src/browser/shell/sidebar-top-menu-widget.tsx +26 -0
  743. package/src/browser/shell/tab-bar-toolbar.tsx +6 -3
  744. package/src/browser/shell/tab-bars.ts +43 -9
  745. package/src/browser/shell/theia-dock-panel.ts +49 -15
  746. package/src/browser/status-bar/status-bar.tsx +3 -1
  747. package/src/browser/style/breadcrumbs.css +131 -0
  748. package/src/browser/style/index.css +15 -0
  749. package/src/browser/style/menus.css +14 -4
  750. package/src/browser/style/scrollbars.css +33 -14
  751. package/src/browser/style/sidepanel.css +19 -8
  752. package/src/browser/style/status-bar.css +6 -1
  753. package/src/browser/style/tabs.css +59 -34
  754. package/src/browser/style/tree.css +0 -1
  755. package/src/browser/style/view-container.css +19 -0
  756. package/src/browser/tree/tree-widget.tsx +36 -21
  757. package/src/browser/view-container.ts +52 -57
  758. package/src/browser/widgets/alert-message.tsx +5 -4
  759. package/src/browser/widgets/react-renderer.tsx +5 -2
  760. package/src/browser/widgets/widget.ts +50 -2
  761. package/src/browser/window/default-window-service.ts +5 -0
  762. package/src/browser/window/test/mock-window-service.ts +1 -0
  763. package/src/browser/window/window-service.ts +12 -0
  764. package/src/browser/window-contribution.ts +64 -0
  765. package/src/common/command.ts +14 -0
  766. package/src/common/i18n/localization.ts +33 -0
  767. package/src/common/message-service.ts +2 -0
  768. package/src/common/promise-util.ts +13 -2
  769. package/src/electron-browser/menu/electron-context-menu-renderer.ts +2 -2
  770. package/src/electron-browser/menu/electron-main-menu-factory.ts +38 -20
  771. package/src/electron-browser/menu/electron-menu-contribution.ts +21 -4
  772. package/src/electron-browser/window/electron-window-service.ts +4 -0
  773. package/src/electron-common/electron-main-window-service.ts +1 -0
  774. package/src/electron-main/electron-main-application.ts +9 -6
  775. package/src/electron-main/electron-main-window-service-impl.ts +4 -0
  776. package/src/node/backend-application-config-provider.ts +2 -2
  777. package/src/node/i18n/i18n-backend-module.ts +34 -0
  778. package/src/node/i18n/localization-backend-contribution.ts +45 -0
  779. package/src/node/i18n/localization-contribution.ts +100 -0
  780. package/src/node/i18n/localization-provider.ts +68 -0
  781. package/src/node/messaging/http-websocket-adapter.ts +103 -0
  782. package/src/node/messaging/messaging-backend-module.ts +4 -0
  783. package/src/node/messaging/messaging-contribution.ts +47 -2
package/README.md CHANGED
@@ -78,14 +78,14 @@ export class SomeClass {
78
78
  - [`@phosphor/signaling@1`](https://www.npmjs.com/package/@phosphor/signaling)
79
79
  - [`@phosphor/virtualdom@1`](https://www.npmjs.com/package/@phosphor/virtualdom)
80
80
  - [`@phosphor/widgets@1`](https://www.npmjs.com/package/@phosphor/widgets)
81
- - [`@theia/application-package@1.17.0-next.ff9e0507`](https://www.npmjs.com/package/@theia/application-package)
82
- - [`@theia/application-package/lib/environment@1.17.0-next.ff9e0507`](https://www.npmjs.com/package/@theia/application-package)
81
+ - [`@theia/application-package@1.18.0-next.05f289b3`](https://www.npmjs.com/package/@theia/application-package)
82
+ - [`@theia/application-package/lib/environment@1.18.0-next.05f289b3`](https://www.npmjs.com/package/@theia/application-package)
83
83
  - [`dompurify@^2.2.9`](https://www.npmjs.com/package/dompurify)
84
84
  - [`electron@^9.0.2`](https://www.npmjs.com/package/electron)
85
85
  - [`express@^4.16.3`](https://www.npmjs.com/package/express)
86
86
  - [`fs-extra@^4.0.2`](https://www.npmjs.com/package/fs-extra)
87
87
  - [`fuzzy@^0.1.3`](https://www.npmjs.com/package/fuzzy)
88
- - [`inversify@^5.0.1`](https://www.npmjs.com/package/inversify)
88
+ - [`inversify@^5.1.1`](https://www.npmjs.com/package/inversify)
89
89
  - [`lodash.debounce@^4.0.8`](https://www.npmjs.com/package/lodash.debounce)
90
90
  - [`lodash.throttle@^4.1.1`](https://www.npmjs.com/package/lodash.throttle)
91
91
  - [`nsfw@^2.1.2`](https://www.npmjs.com/package/nsfw)
@@ -14,19 +14,6 @@
14
14
  *
15
15
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  ********************************************************************************/
17
- var __extends = (this && this.__extends) || (function () {
18
- var extendStatics = function (d, b) {
19
- extendStatics = Object.setPrototypeOf ||
20
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
22
- return extendStatics(d, b);
23
- };
24
- return function (d, b) {
25
- extendStatics(d, b);
26
- function __() { this.constructor = d; }
27
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
28
- };
29
- })();
30
17
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
31
18
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
32
19
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -39,142 +26,79 @@ var __metadata = (this && this.__metadata) || function (k, v) {
39
26
  var __param = (this && this.__param) || function (paramIndex, decorator) {
40
27
  return function (target, key) { decorator(target, key, paramIndex); }
41
28
  };
42
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
43
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
44
- return new (P || (P = Promise))(function (resolve, reject) {
45
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
46
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
47
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
48
- step((generator = generator.apply(thisArg, _arguments || [])).next());
49
- });
50
- };
51
- var __generator = (this && this.__generator) || function (thisArg, body) {
52
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
53
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
54
- function verb(n) { return function (v) { return step([n, v]); }; }
55
- function step(op) {
56
- if (f) throw new TypeError("Generator is already executing.");
57
- while (_) try {
58
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
59
- if (y = 0, t) op = [op[0] & 2, t.value];
60
- switch (op[0]) {
61
- case 0: case 1: t = op; break;
62
- case 4: _.label++; return { value: op[1], done: false };
63
- case 5: _.label++; y = op[1]; op = [0]; continue;
64
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
65
- default:
66
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
67
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
68
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
69
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
70
- if (t[2]) _.ops.pop();
71
- _.trys.pop(); continue;
72
- }
73
- op = body.call(thisArg, _);
74
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
75
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
76
- }
77
- };
78
29
  Object.defineProperty(exports, "__esModule", { value: true });
79
30
  exports.AboutDialog = exports.AboutDialogProps = exports.ABOUT_EXTENSIONS_CLASS = exports.ABOUT_CONTENT_CLASS = void 0;
80
- var React = require("react");
81
- var inversify_1 = require("inversify");
82
- var dialogs_1 = require("./dialogs");
83
- var react_dialog_1 = require("./dialogs/react-dialog");
84
- var application_protocol_1 = require("../common/application-protocol");
85
- var frontend_application_config_provider_1 = require("./frontend-application-config-provider");
31
+ const React = require("react");
32
+ const inversify_1 = require("inversify");
33
+ const dialogs_1 = require("./dialogs");
34
+ const react_dialog_1 = require("./dialogs/react-dialog");
35
+ const application_protocol_1 = require("../common/application-protocol");
36
+ const frontend_application_config_provider_1 = require("./frontend-application-config-provider");
86
37
  exports.ABOUT_CONTENT_CLASS = 'theia-aboutDialog';
87
38
  exports.ABOUT_EXTENSIONS_CLASS = 'theia-aboutExtensions';
88
- var AboutDialogProps = /** @class */ (function (_super) {
89
- __extends(AboutDialogProps, _super);
90
- function AboutDialogProps() {
91
- return _super !== null && _super.apply(this, arguments) || this;
92
- }
93
- AboutDialogProps = __decorate([
94
- inversify_1.injectable()
95
- ], AboutDialogProps);
96
- return AboutDialogProps;
97
- }(dialogs_1.DialogProps));
39
+ let AboutDialogProps = class AboutDialogProps extends dialogs_1.DialogProps {
40
+ };
41
+ AboutDialogProps = __decorate([
42
+ inversify_1.injectable()
43
+ ], AboutDialogProps);
98
44
  exports.AboutDialogProps = AboutDialogProps;
99
- var AboutDialog = /** @class */ (function (_super) {
100
- __extends(AboutDialog, _super);
101
- function AboutDialog(props) {
102
- var _this = _super.call(this, {
45
+ let AboutDialog = class AboutDialog extends react_dialog_1.ReactDialog {
46
+ constructor(props) {
47
+ super({
103
48
  title: frontend_application_config_provider_1.FrontendApplicationConfigProvider.get().applicationName,
104
- }) || this;
105
- _this.props = props;
106
- _this.extensionsInfos = [];
107
- _this.appendAcceptButton('Ok');
108
- return _this;
109
- }
110
- AboutDialog.prototype.init = function () {
111
- return __awaiter(this, void 0, void 0, function () {
112
- var _a, _b;
113
- return __generator(this, function (_c) {
114
- switch (_c.label) {
115
- case 0:
116
- _a = this;
117
- return [4 /*yield*/, this.appServer.getApplicationInfo()];
118
- case 1:
119
- _a.applicationInfo = _c.sent();
120
- _b = this;
121
- return [4 /*yield*/, this.appServer.getExtensionsInfos()];
122
- case 2:
123
- _b.extensionsInfos = _c.sent();
124
- this.update();
125
- return [2 /*return*/];
126
- }
127
- });
128
49
  });
129
- };
130
- AboutDialog.prototype.renderHeader = function () {
131
- var applicationInfo = this.applicationInfo;
50
+ this.props = props;
51
+ this.extensionsInfos = [];
52
+ this.appendAcceptButton('Ok');
53
+ }
54
+ async init() {
55
+ this.applicationInfo = await this.appServer.getApplicationInfo();
56
+ this.extensionsInfos = await this.appServer.getExtensionsInfos();
57
+ this.update();
58
+ }
59
+ renderHeader() {
60
+ const applicationInfo = this.applicationInfo;
132
61
  return applicationInfo && React.createElement("h3", null,
133
62
  applicationInfo.name,
134
63
  " ",
135
64
  applicationInfo.version);
136
- };
137
- AboutDialog.prototype.renderExtensions = function () {
138
- var extensionsInfos = this.extensionsInfos;
65
+ }
66
+ renderExtensions() {
67
+ const extensionsInfos = this.extensionsInfos;
139
68
  return React.createElement(React.Fragment, null,
140
69
  React.createElement("h3", null, "List of extensions"),
141
70
  React.createElement("ul", { className: exports.ABOUT_EXTENSIONS_CLASS }, extensionsInfos
142
- .sort(function (a, b) { return a.name.toLowerCase().localeCompare(b.name.toLowerCase()); })
143
- .map(function (extension) { return React.createElement("li", { key: extension.name },
71
+ .sort((a, b) => a.name.toLowerCase().localeCompare(b.name.toLowerCase()))
72
+ .map((extension) => React.createElement("li", { key: extension.name },
144
73
  extension.name,
145
74
  " ",
146
- extension.version); })));
147
- };
148
- AboutDialog.prototype.render = function () {
75
+ extension.version))));
76
+ }
77
+ render() {
149
78
  return React.createElement("div", { className: exports.ABOUT_CONTENT_CLASS },
150
79
  this.renderHeader(),
151
80
  this.renderExtensions());
152
- };
153
- AboutDialog.prototype.onAfterAttach = function (msg) {
154
- _super.prototype.onAfterAttach.call(this, msg);
81
+ }
82
+ onAfterAttach(msg) {
83
+ super.onAfterAttach(msg);
155
84
  this.update();
156
- };
157
- Object.defineProperty(AboutDialog.prototype, "value", {
158
- get: function () { return undefined; },
159
- enumerable: false,
160
- configurable: true
161
- });
162
- __decorate([
163
- inversify_1.inject(application_protocol_1.ApplicationServer),
164
- __metadata("design:type", Object)
165
- ], AboutDialog.prototype, "appServer", void 0);
166
- __decorate([
167
- inversify_1.postConstruct(),
168
- __metadata("design:type", Function),
169
- __metadata("design:paramtypes", []),
170
- __metadata("design:returntype", Promise)
171
- ], AboutDialog.prototype, "init", null);
172
- AboutDialog = __decorate([
173
- inversify_1.injectable(),
174
- __param(0, inversify_1.inject(AboutDialogProps)),
175
- __metadata("design:paramtypes", [AboutDialogProps])
176
- ], AboutDialog);
177
- return AboutDialog;
178
- }(react_dialog_1.ReactDialog));
85
+ }
86
+ get value() { return undefined; }
87
+ };
88
+ __decorate([
89
+ inversify_1.inject(application_protocol_1.ApplicationServer),
90
+ __metadata("design:type", Object)
91
+ ], AboutDialog.prototype, "appServer", void 0);
92
+ __decorate([
93
+ inversify_1.postConstruct(),
94
+ __metadata("design:type", Function),
95
+ __metadata("design:paramtypes", []),
96
+ __metadata("design:returntype", Promise)
97
+ ], AboutDialog.prototype, "init", null);
98
+ AboutDialog = __decorate([
99
+ inversify_1.injectable(),
100
+ __param(0, inversify_1.inject(AboutDialogProps)),
101
+ __metadata("design:paramtypes", [AboutDialogProps])
102
+ ], AboutDialog);
179
103
  exports.AboutDialog = AboutDialog;
180
104
  //# sourceMappingURL=about-dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"about-dialog.js","sourceRoot":"","sources":["../../src/browser/about-dialog.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAElF,6BAA+B;AAC/B,uCAA8D;AAC9D,qCAAwC;AACxC,uDAAqD;AACrD,uEAAmG;AAEnG,+FAA2F;AAE9E,QAAA,mBAAmB,GAAG,mBAAmB,CAAC;AAC1C,QAAA,sBAAsB,GAAG,uBAAuB,CAAC;AAG9D;IAAsC,oCAAW;IAAjD;;IACA,CAAC;IADY,gBAAgB;QAD5B,sBAAU,EAAE;OACA,gBAAgB,CAC5B;IAAD,uBAAC;CAAA,AADD,CAAsC,qBAAW,GAChD;AADY,4CAAgB;AAI7B;IAAiC,+BAAiB;IAQ9C,qBACiD,KAAuB;QADxE,YAGI,kBAAM;YACF,KAAK,EAAE,wEAAiC,CAAC,GAAG,EAAE,CAAC,eAAe;SACjE,CAAC,SAEL;QANgD,WAAK,GAAL,KAAK,CAAkB;QAP9D,qBAAe,GAAoB,EAAE,CAAC;QAY5C,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;;IAClC,CAAC;IAGe,0BAAI,GAApB;;;;;;wBACI,KAAA,IAAI,CAAA;wBAAmB,qBAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAA;;wBAAhE,GAAK,eAAe,GAAG,SAAyC,CAAC;wBACjE,KAAA,IAAI,CAAA;wBAAmB,qBAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAA;;wBAAhE,GAAK,eAAe,GAAG,SAAyC,CAAC;wBACjE,IAAI,CAAC,MAAM,EAAE,CAAC;;;;;KACjB;IAES,kCAAY,GAAtB;QACI,IAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,OAAO,eAAe,IAAI;YAAK,eAAe,CAAC,IAAI;;YAAG,eAAe,CAAC,OAAO,CAAM,CAAC;IACxF,CAAC;IAES,sCAAgB,GAA1B;QACI,IAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,OAAO;YACH,qDAA2B;YAE3B,4BAAI,SAAS,EAAE,8BAAsB,IAE7B,eAAe;iBACV,IAAI,CAAC,UAAC,CAAgB,EAAE,CAAgB,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAxD,CAAwD,CAAC;iBACtG,GAAG,CAAC,UAAC,SAAwB,IAAK,OAAA,4BAAI,GAAG,EAAE,SAAS,CAAC,IAAI;gBAAG,SAAS,CAAC,IAAI;;gBAAG,SAAS,CAAC,OAAO,CAAM,EAAlE,CAAkE,CAAC,CAE7G,CACN,CAAC;IACR,CAAC;IAES,4BAAM,GAAhB;QACI,OAAO,6BAAK,SAAS,EAAE,2BAAmB;YACrC,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,gBAAgB,EAAE,CACtB,CAAC;IACX,CAAC;IAES,mCAAa,GAAvB,UAAwB,GAAY;QAChC,iBAAM,aAAa,YAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,sBAAI,8BAAK;aAAT,cAAyB,OAAO,SAAS,CAAC,CAAC,CAAC;;;OAAA;IAlD5C;QADC,kBAAM,CAAC,wCAAiB,CAAC;;kDACsB;IAYhD;QADC,yBAAa,EAAE;;;;2CAKf;IAtBQ,WAAW;QADvB,sBAAU,EAAE;QAUJ,WAAA,kBAAM,CAAC,gBAAgB,CAAC,CAAA;yCAA2B,gBAAgB;OAT/D,WAAW,CAyDvB;IAAD,kBAAC;CAAA,AAzDD,CAAiC,0BAAW,GAyD3C;AAzDY,kCAAW"}
1
+ {"version":3,"file":"about-dialog.js","sourceRoot":"","sources":["../../src/browser/about-dialog.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;;;AAElF,+BAA+B;AAC/B,yCAA8D;AAC9D,uCAAwC;AACxC,yDAAqD;AACrD,yEAAmG;AAEnG,iGAA2F;AAE9E,QAAA,mBAAmB,GAAG,mBAAmB,CAAC;AAC1C,QAAA,sBAAsB,GAAG,uBAAuB,CAAC;AAG9D,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,qBAAW;CAChD,CAAA;AADY,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CAC5B;AADY,4CAAgB;AAI7B,IAAa,WAAW,GAAxB,MAAa,WAAY,SAAQ,0BAAiB;IAQ9C,YACiD,KAAuB;QAEpE,KAAK,CAAC;YACF,KAAK,EAAE,wEAAiC,CAAC,GAAG,EAAE,CAAC,eAAe;SACjE,CAAC,CAAC;QAJ0C,UAAK,GAAL,KAAK,CAAkB;QAP9D,oBAAe,GAAoB,EAAE,CAAC;QAY5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAGS,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;QACjE,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAES,YAAY;QAClB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,OAAO,eAAe,IAAI;YAAK,eAAe,CAAC,IAAI;;YAAG,eAAe,CAAC,OAAO,CAAM,CAAC;IACxF,CAAC;IAES,gBAAgB;QACtB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,OAAO;YACH,qDAA2B;YAE3B,4BAAI,SAAS,EAAE,8BAAsB,IAE7B,eAAe;iBACV,IAAI,CAAC,CAAC,CAAgB,EAAE,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;iBACtG,GAAG,CAAC,CAAC,SAAwB,EAAE,EAAE,CAAC,4BAAI,GAAG,EAAE,SAAS,CAAC,IAAI;gBAAG,SAAS,CAAC,IAAI;;gBAAG,SAAS,CAAC,OAAO,CAAM,CAAC,CAE7G,CACN,CAAC;IACR,CAAC;IAES,MAAM;QACZ,OAAO,6BAAK,SAAS,EAAE,2BAAmB;YACrC,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,gBAAgB,EAAE,CACtB,CAAC;IACX,CAAC;IAES,aAAa,CAAC,GAAY;QAChC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,KAAK,KAAgB,OAAO,SAAS,CAAC,CAAC,CAAC;CAC/C,CAAA;AAnDG;IADC,kBAAM,CAAC,wCAAiB,CAAC;;8CACsB;AAYhD;IADC,yBAAa,EAAE;;;;uCAKf;AAtBQ,WAAW;IADvB,sBAAU,EAAE;IAUJ,WAAA,kBAAM,CAAC,gBAAgB,CAAC,CAAA;qCAA2B,gBAAgB;GAT/D,WAAW,CAyDvB;AAzDY,kCAAW"}
@@ -23,62 +23,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
23
23
  var __metadata = (this && this.__metadata) || function (k, v) {
24
24
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
25
  };
26
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
27
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
28
- return new (P || (P = Promise))(function (resolve, reject) {
29
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
30
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
31
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
32
- step((generator = generator.apply(thisArg, _arguments || [])).next());
33
- });
34
- };
35
- var __generator = (this && this.__generator) || function (thisArg, body) {
36
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
37
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
38
- function verb(n) { return function (v) { return step([n, v]); }; }
39
- function step(op) {
40
- if (f) throw new TypeError("Generator is already executing.");
41
- while (_) try {
42
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
43
- if (y = 0, t) op = [op[0] & 2, t.value];
44
- switch (op[0]) {
45
- case 0: case 1: t = op; break;
46
- case 4: _.label++; return { value: op[1], done: false };
47
- case 5: _.label++; y = op[1]; op = [0]; continue;
48
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
49
- default:
50
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
51
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
52
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
53
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
54
- if (t[2]) _.ops.pop();
55
- _.trys.pop(); continue;
56
- }
57
- op = body.call(thisArg, _);
58
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
59
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
60
- }
61
- };
62
- var __read = (this && this.__read) || function (o, n) {
63
- var m = typeof Symbol === "function" && o[Symbol.iterator];
64
- if (!m) return o;
65
- var i = m.call(o), r, ar = [], e;
66
- try {
67
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
68
- }
69
- catch (error) { e = { error: error }; }
70
- finally {
71
- try {
72
- if (r && !r.done && (m = i["return"])) m.call(i);
73
- }
74
- finally { if (e) throw e.error; }
75
- }
76
- return ar;
77
- };
78
- var __spread = (this && this.__spread) || function () {
79
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
80
- return ar;
81
- };
82
26
  Object.defineProperty(exports, "__esModule", { value: true });
83
27
  exports.readAllowedExtensions = exports.AuthenticationServiceImpl = exports.AuthenticationService = void 0;
84
28
  /*---------------------------------------------------------------------------------------------
@@ -86,15 +30,15 @@ exports.readAllowedExtensions = exports.AuthenticationServiceImpl = exports.Auth
86
30
  * Licensed under the MIT License. See License.txt in the project root for license information.
87
31
  *--------------------------------------------------------------------------------------------*/
88
32
  // code copied and modified from https://github.com/microsoft/vscode/blob/1.47.3/src/vs/workbench/services/authentication/browser/authenticationService.ts
89
- var inversify_1 = require("inversify");
90
- var event_1 = require("../common/event");
91
- var storage_service_1 = require("../browser/storage-service");
92
- var menu_1 = require("../common/menu");
93
- var command_1 = require("../common/command");
94
- var disposable_1 = require("../common/disposable");
33
+ const inversify_1 = require("inversify");
34
+ const event_1 = require("../common/event");
35
+ const storage_service_1 = require("../browser/storage-service");
36
+ const menu_1 = require("../common/menu");
37
+ const command_1 = require("../common/command");
38
+ const disposable_1 = require("../common/disposable");
95
39
  exports.AuthenticationService = Symbol('AuthenticationService');
96
- var AuthenticationServiceImpl = /** @class */ (function () {
97
- function AuthenticationServiceImpl() {
40
+ let AuthenticationServiceImpl = class AuthenticationServiceImpl {
41
+ constructor() {
98
42
  this.noAccountsCommand = { id: 'noAccounts' };
99
43
  this.signInRequestItems = new Map();
100
44
  this.authenticationProviders = new Map();
@@ -105,82 +49,63 @@ var AuthenticationServiceImpl = /** @class */ (function () {
105
49
  this.onDidChangeSessionsEmitter = new event_1.Emitter();
106
50
  this.onDidChangeSessions = this.onDidChangeSessionsEmitter.event;
107
51
  }
108
- AuthenticationServiceImpl.prototype.init = function () {
109
- var _this = this;
110
- var disposableMap = new Map();
111
- this.onDidChangeSessions(function (e) { return __awaiter(_this, void 0, void 0, function () {
112
- var sessions_1;
113
- var _this = this;
114
- return __generator(this, function (_a) {
115
- switch (_a.label) {
116
- case 0:
117
- if (!(e.event.added.length > 0)) return [3 /*break*/, 2];
118
- return [4 /*yield*/, this.getSessions(e.providerId)];
119
- case 1:
120
- sessions_1 = _a.sent();
121
- sessions_1.forEach(function (session) {
122
- if (sessions_1.find(function (s) { return disposableMap.get(s.id); })) {
123
- return;
124
- }
125
- var disposables = new disposable_1.DisposableCollection();
126
- var commandId = "account-sign-out-" + e.providerId + "-" + session.id;
127
- var command = _this.commands.registerCommand({ id: commandId }, {
128
- execute: function () { return __awaiter(_this, void 0, void 0, function () {
129
- return __generator(this, function (_a) {
130
- this.signOutOfAccount(e.providerId, session.account.label);
131
- return [2 /*return*/];
132
- });
133
- }); }
134
- });
135
- var subSubMenuPath = __spread(menu_1.ACCOUNTS_SUBMENU, ['account-sub-menu']);
136
- _this.menus.registerSubmenu(subSubMenuPath, session.account.label + " (" + e.label + ")");
137
- var menuAction = _this.menus.registerMenuAction(subSubMenuPath, {
138
- label: 'Sign Out',
139
- commandId: commandId
140
- });
141
- disposables.push(menuAction);
142
- disposables.push(command);
143
- disposableMap.set(session.id, disposables);
144
- });
145
- _a.label = 2;
146
- case 2:
147
- if (e.event.removed.length > 0) {
148
- e.event.removed.forEach(function (removed) {
149
- var toDispose = disposableMap.get(removed);
150
- if (toDispose) {
151
- toDispose.dispose();
152
- disposableMap.delete(removed);
153
- }
154
- });
52
+ init() {
53
+ const disposableMap = new Map();
54
+ this.onDidChangeSessions(async (e) => {
55
+ if (e.event.added.length > 0) {
56
+ const sessions = await this.getSessions(e.providerId);
57
+ sessions.forEach(session => {
58
+ if (sessions.find(s => disposableMap.get(s.id))) {
59
+ return;
60
+ }
61
+ const disposables = new disposable_1.DisposableCollection();
62
+ const commandId = `account-sign-out-${e.providerId}-${session.id}`;
63
+ const command = this.commands.registerCommand({ id: commandId }, {
64
+ execute: async () => {
65
+ this.signOutOfAccount(e.providerId, session.account.label);
155
66
  }
156
- return [2 /*return*/];
157
- }
158
- });
159
- }); });
67
+ });
68
+ const subSubMenuPath = [...menu_1.ACCOUNTS_SUBMENU, 'account-sub-menu'];
69
+ this.menus.registerSubmenu(subSubMenuPath, `${session.account.label} (${e.label})`);
70
+ const menuAction = this.menus.registerMenuAction(subSubMenuPath, {
71
+ label: 'Sign Out',
72
+ commandId
73
+ });
74
+ disposables.push(menuAction);
75
+ disposables.push(command);
76
+ disposableMap.set(session.id, disposables);
77
+ });
78
+ }
79
+ if (e.event.removed.length > 0) {
80
+ e.event.removed.forEach(removed => {
81
+ const toDispose = disposableMap.get(removed);
82
+ if (toDispose) {
83
+ toDispose.dispose();
84
+ disposableMap.delete(removed);
85
+ }
86
+ });
87
+ }
88
+ });
160
89
  this.commands.registerCommand(this.noAccountsCommand, {
161
- execute: function () { },
162
- isEnabled: function () { return false; }
90
+ execute: () => { },
91
+ isEnabled: () => false
163
92
  });
164
- };
165
- AuthenticationServiceImpl.prototype.getProviderIds = function () {
166
- var providerIds = [];
167
- this.authenticationProviders.forEach(function (provider) {
93
+ }
94
+ getProviderIds() {
95
+ const providerIds = [];
96
+ this.authenticationProviders.forEach(provider => {
168
97
  providerIds.push(provider.id);
169
98
  });
170
99
  return providerIds;
171
- };
172
- AuthenticationServiceImpl.prototype.isAuthenticationProviderRegistered = function (id) {
100
+ }
101
+ isAuthenticationProviderRegistered(id) {
173
102
  return this.authenticationProviders.has(id);
174
- };
175
- AuthenticationServiceImpl.prototype.updateAccountsMenuItem = function () {
176
- var _this = this;
177
- var hasSession = false;
178
- this.authenticationProviders.forEach(function (provider) { return __awaiter(_this, void 0, void 0, function () {
179
- return __generator(this, function (_a) {
180
- hasSession = hasSession || provider.hasSessions();
181
- return [2 /*return*/];
182
- });
183
- }); });
103
+ }
104
+ updateAccountsMenuItem() {
105
+ let hasSession = false;
106
+ this.authenticationProviders.forEach(async (provider) => {
107
+ hasSession = hasSession || provider.hasSessions();
108
+ });
184
109
  if (hasSession && this.noAccountsMenuItem) {
185
110
  this.noAccountsMenuItem.dispose();
186
111
  this.noAccountsMenuItem = undefined;
@@ -192,301 +117,212 @@ var AuthenticationServiceImpl = /** @class */ (function () {
192
117
  commandId: this.noAccountsCommand.id
193
118
  });
194
119
  }
195
- };
196
- AuthenticationServiceImpl.prototype.registerAuthenticationProvider = function (id, authenticationProvider) {
120
+ }
121
+ registerAuthenticationProvider(id, authenticationProvider) {
197
122
  if (this.authenticationProviders.get(id)) {
198
- throw new Error("An authentication provider with id '" + id + "' is already registered.");
123
+ throw new Error(`An authentication provider with id '${id}' is already registered.`);
199
124
  }
200
125
  this.authenticationProviders.set(id, authenticationProvider);
201
- this.onDidRegisterAuthenticationProviderEmitter.fire({ id: id, label: authenticationProvider.label });
126
+ this.onDidRegisterAuthenticationProviderEmitter.fire({ id, label: authenticationProvider.label });
202
127
  this.updateAccountsMenuItem();
203
- console.log("An authentication provider with id '" + id + "' was registered.");
204
- };
205
- AuthenticationServiceImpl.prototype.unregisterAuthenticationProvider = function (id) {
206
- var provider = this.authenticationProviders.get(id);
128
+ console.log(`An authentication provider with id '${id}' was registered.`);
129
+ }
130
+ unregisterAuthenticationProvider(id) {
131
+ const provider = this.authenticationProviders.get(id);
207
132
  if (provider) {
208
133
  this.authenticationProviders.delete(id);
209
- this.onDidUnregisterAuthenticationProviderEmitter.fire({ id: id, label: provider.label });
134
+ this.onDidUnregisterAuthenticationProviderEmitter.fire({ id, label: provider.label });
210
135
  this.updateAccountsMenuItem();
211
136
  }
212
137
  else {
213
- console.error("Failed to unregister an authentication provider. A provider with id '" + id + "' was not found.");
138
+ console.error(`Failed to unregister an authentication provider. A provider with id '${id}' was not found.`);
214
139
  }
215
- };
216
- AuthenticationServiceImpl.prototype.updateSessions = function (id, event) {
217
- return __awaiter(this, void 0, void 0, function () {
218
- var provider;
219
- return __generator(this, function (_a) {
220
- switch (_a.label) {
221
- case 0:
222
- provider = this.authenticationProviders.get(id);
223
- if (!provider) return [3 /*break*/, 4];
224
- return [4 /*yield*/, provider.updateSessionItems(event)];
225
- case 1:
226
- _a.sent();
227
- this.onDidChangeSessionsEmitter.fire({ providerId: id, label: provider.label, event: event });
228
- this.updateAccountsMenuItem();
229
- if (!event.added) return [3 /*break*/, 3];
230
- return [4 /*yield*/, this.updateNewSessionRequests(provider)];
231
- case 2:
232
- _a.sent();
233
- _a.label = 3;
234
- case 3: return [3 /*break*/, 5];
235
- case 4:
236
- console.error("Failed to update an authentication session. An authentication provider with id '" + id + "' was not found.");
237
- _a.label = 5;
238
- case 5: return [2 /*return*/];
140
+ }
141
+ async updateSessions(id, event) {
142
+ const provider = this.authenticationProviders.get(id);
143
+ if (provider) {
144
+ await provider.updateSessionItems(event);
145
+ this.onDidChangeSessionsEmitter.fire({ providerId: id, label: provider.label, event: event });
146
+ this.updateAccountsMenuItem();
147
+ if (event.added) {
148
+ await this.updateNewSessionRequests(provider);
149
+ }
150
+ }
151
+ else {
152
+ console.error(`Failed to update an authentication session. An authentication provider with id '${id}' was not found.`);
153
+ }
154
+ }
155
+ async updateNewSessionRequests(provider) {
156
+ const existingRequestsForProvider = this.signInRequestItems.get(provider.id);
157
+ if (!existingRequestsForProvider) {
158
+ return;
159
+ }
160
+ const sessions = await provider.getSessions();
161
+ Object.keys(existingRequestsForProvider).forEach(requestedScopes => {
162
+ if (sessions.some(session => session.scopes.slice().sort().join('') === requestedScopes)) {
163
+ const sessionRequest = existingRequestsForProvider[requestedScopes];
164
+ if (sessionRequest) {
165
+ sessionRequest.disposables.forEach(item => item.dispose());
239
166
  }
240
- });
241
- });
242
- };
243
- AuthenticationServiceImpl.prototype.updateNewSessionRequests = function (provider) {
244
- return __awaiter(this, void 0, void 0, function () {
245
- var existingRequestsForProvider, sessions;
246
- var _this = this;
247
- return __generator(this, function (_a) {
248
- switch (_a.label) {
249
- case 0:
250
- existingRequestsForProvider = this.signInRequestItems.get(provider.id);
251
- if (!existingRequestsForProvider) {
252
- return [2 /*return*/];
253
- }
254
- return [4 /*yield*/, provider.getSessions()];
255
- case 1:
256
- sessions = _a.sent();
257
- Object.keys(existingRequestsForProvider).forEach(function (requestedScopes) {
258
- if (sessions.some(function (session) { return session.scopes.slice().sort().join('') === requestedScopes; })) {
259
- var sessionRequest = existingRequestsForProvider[requestedScopes];
260
- if (sessionRequest) {
261
- sessionRequest.disposables.forEach(function (item) { return item.dispose(); });
262
- }
263
- delete existingRequestsForProvider[requestedScopes];
264
- if (Object.keys(existingRequestsForProvider).length === 0) {
265
- _this.signInRequestItems.delete(provider.id);
266
- }
267
- else {
268
- _this.signInRequestItems.set(provider.id, existingRequestsForProvider);
269
- }
270
- }
271
- });
272
- return [2 /*return*/];
167
+ delete existingRequestsForProvider[requestedScopes];
168
+ if (Object.keys(existingRequestsForProvider).length === 0) {
169
+ this.signInRequestItems.delete(provider.id);
273
170
  }
274
- });
171
+ else {
172
+ this.signInRequestItems.set(provider.id, existingRequestsForProvider);
173
+ }
174
+ }
275
175
  });
276
- };
277
- AuthenticationServiceImpl.prototype.requestNewSession = function (providerId, scopes, extensionId, extensionName) {
278
- return __awaiter(this, void 0, void 0, function () {
279
- var provider, providerRequests, scopesList, extensionHasExistingRequest, menuItem, signInCommand, existingRequest;
280
- var _a;
281
- var _this = this;
282
- return __generator(this, function (_b) {
283
- switch (_b.label) {
284
- case 0:
176
+ }
177
+ async requestNewSession(providerId, scopes, extensionId, extensionName) {
178
+ let provider = this.authenticationProviders.get(providerId);
179
+ if (!provider) {
180
+ // Activate has already been called for the authentication provider, but it cannot block on registering itself
181
+ // since this is sync and returns a disposable. So, wait for registration event to fire that indicates the
182
+ // provider is now in the map.
183
+ await new Promise((resolve, _) => {
184
+ this.onDidRegisterAuthenticationProvider(e => {
185
+ if (e.id === providerId) {
285
186
  provider = this.authenticationProviders.get(providerId);
286
- if (!!provider) return [3 /*break*/, 2];
287
- // Activate has already been called for the authentication provider, but it cannot block on registering itself
288
- // since this is sync and returns a disposable. So, wait for registration event to fire that indicates the
289
- // provider is now in the map.
290
- return [4 /*yield*/, new Promise(function (resolve, _) {
291
- _this.onDidRegisterAuthenticationProvider(function (e) {
292
- if (e.id === providerId) {
293
- provider = _this.authenticationProviders.get(providerId);
294
- resolve();
295
- }
296
- });
297
- })];
298
- case 1:
299
- // Activate has already been called for the authentication provider, but it cannot block on registering itself
300
- // since this is sync and returns a disposable. So, wait for registration event to fire that indicates the
301
- // provider is now in the map.
302
- _b.sent();
303
- _b.label = 2;
304
- case 2:
305
- if (provider) {
306
- providerRequests = this.signInRequestItems.get(providerId);
307
- scopesList = scopes.sort().join('');
308
- extensionHasExistingRequest = providerRequests
309
- && providerRequests[scopesList]
310
- && providerRequests[scopesList].requestingExtensionIds.indexOf(extensionId) > -1;
311
- if (extensionHasExistingRequest) {
312
- return [2 /*return*/];
313
- }
314
- menuItem = this.menus.registerMenuAction(menu_1.ACCOUNTS_SUBMENU, {
315
- label: "Sign in to use " + extensionName + " (1)",
316
- order: '1',
317
- commandId: extensionId + "signIn",
318
- });
319
- signInCommand = this.commands.registerCommand({ id: extensionId + "signIn" }, {
320
- execute: function () { return __awaiter(_this, void 0, void 0, function () {
321
- var session, allowList;
322
- return __generator(this, function (_a) {
323
- switch (_a.label) {
324
- case 0: return [4 /*yield*/, this.login(providerId, scopes)];
325
- case 1:
326
- session = _a.sent();
327
- return [4 /*yield*/, readAllowedExtensions(this.storageService, providerId, session.account.label)];
328
- case 2:
329
- allowList = _a.sent();
330
- if (!allowList.find(function (allowed) { return allowed.id === extensionId; })) {
331
- allowList.push({ id: extensionId, name: extensionName });
332
- this.storageService.setData("authentication-trusted-extensions-" + providerId + "-" + session.account.label, JSON.stringify(allowList));
333
- }
334
- // And also set it as the preferred account for the extension
335
- this.storageService.setData("authentication-session-" + extensionName + "-" + providerId, session.id);
336
- return [2 /*return*/];
337
- }
338
- });
339
- }); }
340
- });
341
- if (providerRequests) {
342
- existingRequest = providerRequests[scopesList] || { disposables: [], requestingExtensionIds: [] };
343
- providerRequests[scopesList] = {
344
- disposables: __spread(existingRequest.disposables, [menuItem, signInCommand]),
345
- requestingExtensionIds: __spread(existingRequest.requestingExtensionIds, [extensionId])
346
- };
347
- this.signInRequestItems.set(providerId, providerRequests);
348
- }
349
- else {
350
- this.signInRequestItems.set(providerId, (_a = {},
351
- _a[scopesList] = {
352
- disposables: [menuItem, signInCommand],
353
- requestingExtensionIds: [extensionId]
354
- },
355
- _a));
356
- }
357
- }
358
- return [2 /*return*/];
187
+ resolve();
188
+ }
189
+ });
190
+ });
191
+ }
192
+ if (provider) {
193
+ const providerRequests = this.signInRequestItems.get(providerId);
194
+ const scopesList = scopes.sort().join('');
195
+ const extensionHasExistingRequest = providerRequests
196
+ && providerRequests[scopesList]
197
+ && providerRequests[scopesList].requestingExtensionIds.indexOf(extensionId) > -1;
198
+ if (extensionHasExistingRequest) {
199
+ return;
200
+ }
201
+ const menuItem = this.menus.registerMenuAction(menu_1.ACCOUNTS_SUBMENU, {
202
+ label: `Sign in to use ${extensionName} (1)`,
203
+ order: '1',
204
+ commandId: `${extensionId}signIn`,
205
+ });
206
+ const signInCommand = this.commands.registerCommand({ id: `${extensionId}signIn` }, {
207
+ execute: async () => {
208
+ const session = await this.login(providerId, scopes);
209
+ // Add extension to allow list since user explicitly signed in on behalf of it
210
+ const allowList = await readAllowedExtensions(this.storageService, providerId, session.account.label);
211
+ if (!allowList.find(allowed => allowed.id === extensionId)) {
212
+ allowList.push({ id: extensionId, name: extensionName });
213
+ this.storageService.setData(`authentication-trusted-extensions-${providerId}-${session.account.label}`, JSON.stringify(allowList));
214
+ }
215
+ // And also set it as the preferred account for the extension
216
+ this.storageService.setData(`authentication-session-${extensionName}-${providerId}`, session.id);
359
217
  }
360
218
  });
361
- });
362
- };
363
- AuthenticationServiceImpl.prototype.getLabel = function (id) {
364
- var authProvider = this.authenticationProviders.get(id);
219
+ if (providerRequests) {
220
+ const existingRequest = providerRequests[scopesList] || { disposables: [], requestingExtensionIds: [] };
221
+ providerRequests[scopesList] = {
222
+ disposables: [...existingRequest.disposables, menuItem, signInCommand],
223
+ requestingExtensionIds: [...existingRequest.requestingExtensionIds, extensionId]
224
+ };
225
+ this.signInRequestItems.set(providerId, providerRequests);
226
+ }
227
+ else {
228
+ this.signInRequestItems.set(providerId, {
229
+ [scopesList]: {
230
+ disposables: [menuItem, signInCommand],
231
+ requestingExtensionIds: [extensionId]
232
+ }
233
+ });
234
+ }
235
+ }
236
+ }
237
+ getLabel(id) {
238
+ const authProvider = this.authenticationProviders.get(id);
365
239
  if (authProvider) {
366
240
  return authProvider.label;
367
241
  }
368
242
  else {
369
- throw new Error("No authentication provider '" + id + "' is currently registered.");
243
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
370
244
  }
371
- };
372
- AuthenticationServiceImpl.prototype.supportsMultipleAccounts = function (id) {
373
- var authProvider = this.authenticationProviders.get(id);
245
+ }
246
+ supportsMultipleAccounts(id) {
247
+ const authProvider = this.authenticationProviders.get(id);
374
248
  if (authProvider) {
375
249
  return authProvider.supportsMultipleAccounts;
376
250
  }
377
251
  else {
378
- throw new Error("No authentication provider '" + id + "' is currently registered.");
252
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
379
253
  }
380
- };
381
- AuthenticationServiceImpl.prototype.getSessions = function (id) {
382
- return __awaiter(this, void 0, void 0, function () {
383
- var authProvider;
384
- return __generator(this, function (_a) {
385
- authProvider = this.authenticationProviders.get(id);
386
- if (authProvider) {
387
- return [2 /*return*/, authProvider.getSessions()];
388
- }
389
- else {
390
- throw new Error("No authentication provider '" + id + "' is currently registered.");
391
- }
392
- return [2 /*return*/];
393
- });
394
- });
395
- };
396
- AuthenticationServiceImpl.prototype.login = function (id, scopes) {
397
- return __awaiter(this, void 0, void 0, function () {
398
- var authProvider;
399
- return __generator(this, function (_a) {
400
- authProvider = this.authenticationProviders.get(id);
401
- if (authProvider) {
402
- return [2 /*return*/, authProvider.login(scopes)];
403
- }
404
- else {
405
- throw new Error("No authentication provider '" + id + "' is currently registered.");
406
- }
407
- return [2 /*return*/];
408
- });
409
- });
410
- };
411
- AuthenticationServiceImpl.prototype.logout = function (id, sessionId) {
412
- return __awaiter(this, void 0, void 0, function () {
413
- var authProvider;
414
- return __generator(this, function (_a) {
415
- authProvider = this.authenticationProviders.get(id);
416
- if (authProvider) {
417
- return [2 /*return*/, authProvider.logout(sessionId)];
418
- }
419
- else {
420
- throw new Error("No authentication provider '" + id + "' is currently registered.");
421
- }
422
- return [2 /*return*/];
423
- });
424
- });
425
- };
426
- AuthenticationServiceImpl.prototype.signOutOfAccount = function (id, accountName) {
427
- return __awaiter(this, void 0, void 0, function () {
428
- var authProvider;
429
- return __generator(this, function (_a) {
430
- authProvider = this.authenticationProviders.get(id);
431
- if (authProvider) {
432
- return [2 /*return*/, authProvider.signOut(accountName)];
433
- }
434
- else {
435
- throw new Error("No authentication provider '" + id + "' is currently registered.");
436
- }
437
- return [2 /*return*/];
438
- });
439
- });
440
- };
441
- __decorate([
442
- inversify_1.inject(menu_1.MenuModelRegistry),
443
- __metadata("design:type", menu_1.MenuModelRegistry)
444
- ], AuthenticationServiceImpl.prototype, "menus", void 0);
445
- __decorate([
446
- inversify_1.inject(command_1.CommandRegistry),
447
- __metadata("design:type", command_1.CommandRegistry)
448
- ], AuthenticationServiceImpl.prototype, "commands", void 0);
449
- __decorate([
450
- inversify_1.inject(storage_service_1.StorageService),
451
- __metadata("design:type", Object)
452
- ], AuthenticationServiceImpl.prototype, "storageService", void 0);
453
- __decorate([
454
- inversify_1.postConstruct(),
455
- __metadata("design:type", Function),
456
- __metadata("design:paramtypes", []),
457
- __metadata("design:returntype", void 0)
458
- ], AuthenticationServiceImpl.prototype, "init", null);
459
- AuthenticationServiceImpl = __decorate([
460
- inversify_1.injectable()
461
- ], AuthenticationServiceImpl);
462
- return AuthenticationServiceImpl;
463
- }());
254
+ }
255
+ async getSessions(id) {
256
+ const authProvider = this.authenticationProviders.get(id);
257
+ if (authProvider) {
258
+ return authProvider.getSessions();
259
+ }
260
+ else {
261
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
262
+ }
263
+ }
264
+ async login(id, scopes) {
265
+ const authProvider = this.authenticationProviders.get(id);
266
+ if (authProvider) {
267
+ return authProvider.login(scopes);
268
+ }
269
+ else {
270
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
271
+ }
272
+ }
273
+ async logout(id, sessionId) {
274
+ const authProvider = this.authenticationProviders.get(id);
275
+ if (authProvider) {
276
+ return authProvider.logout(sessionId);
277
+ }
278
+ else {
279
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
280
+ }
281
+ }
282
+ async signOutOfAccount(id, accountName) {
283
+ const authProvider = this.authenticationProviders.get(id);
284
+ if (authProvider) {
285
+ return authProvider.signOut(accountName);
286
+ }
287
+ else {
288
+ throw new Error(`No authentication provider '${id}' is currently registered.`);
289
+ }
290
+ }
291
+ };
292
+ __decorate([
293
+ inversify_1.inject(menu_1.MenuModelRegistry),
294
+ __metadata("design:type", menu_1.MenuModelRegistry)
295
+ ], AuthenticationServiceImpl.prototype, "menus", void 0);
296
+ __decorate([
297
+ inversify_1.inject(command_1.CommandRegistry),
298
+ __metadata("design:type", command_1.CommandRegistry)
299
+ ], AuthenticationServiceImpl.prototype, "commands", void 0);
300
+ __decorate([
301
+ inversify_1.inject(storage_service_1.StorageService),
302
+ __metadata("design:type", Object)
303
+ ], AuthenticationServiceImpl.prototype, "storageService", void 0);
304
+ __decorate([
305
+ inversify_1.postConstruct(),
306
+ __metadata("design:type", Function),
307
+ __metadata("design:paramtypes", []),
308
+ __metadata("design:returntype", void 0)
309
+ ], AuthenticationServiceImpl.prototype, "init", null);
310
+ AuthenticationServiceImpl = __decorate([
311
+ inversify_1.injectable()
312
+ ], AuthenticationServiceImpl);
464
313
  exports.AuthenticationServiceImpl = AuthenticationServiceImpl;
465
- function readAllowedExtensions(storageService, providerId, accountName) {
466
- return __awaiter(this, void 0, void 0, function () {
467
- var trustedExtensions, trustedExtensionSrc, err_1;
468
- return __generator(this, function (_a) {
469
- switch (_a.label) {
470
- case 0:
471
- trustedExtensions = [];
472
- _a.label = 1;
473
- case 1:
474
- _a.trys.push([1, 3, , 4]);
475
- return [4 /*yield*/, storageService.getData("authentication-trusted-extensions-" + providerId + "-" + accountName)];
476
- case 2:
477
- trustedExtensionSrc = _a.sent();
478
- if (trustedExtensionSrc) {
479
- trustedExtensions = JSON.parse(trustedExtensionSrc);
480
- }
481
- return [3 /*break*/, 4];
482
- case 3:
483
- err_1 = _a.sent();
484
- console.error(err_1);
485
- return [3 /*break*/, 4];
486
- case 4: return [2 /*return*/, trustedExtensions];
487
- }
488
- });
489
- });
314
+ async function readAllowedExtensions(storageService, providerId, accountName) {
315
+ let trustedExtensions = [];
316
+ try {
317
+ const trustedExtensionSrc = await storageService.getData(`authentication-trusted-extensions-${providerId}-${accountName}`);
318
+ if (trustedExtensionSrc) {
319
+ trustedExtensions = JSON.parse(trustedExtensionSrc);
320
+ }
321
+ }
322
+ catch (err) {
323
+ console.error(err);
324
+ }
325
+ return trustedExtensions;
490
326
  }
491
327
  exports.readAllowedExtensions = readAllowedExtensions;
492
328
  //# sourceMappingURL=authentication-service.js.map