@theia/core 1.40.1 → 1.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/README.md +6 -6
  2. package/i18n/nls.cs.json +5 -1
  3. package/i18n/nls.de.json +5 -1
  4. package/i18n/nls.es.json +5 -1
  5. package/i18n/nls.fr.json +5 -1
  6. package/i18n/nls.hu.json +5 -1
  7. package/i18n/nls.it.json +5 -1
  8. package/i18n/nls.ja.json +5 -1
  9. package/i18n/nls.json +5 -1
  10. package/i18n/nls.pl.json +5 -1
  11. package/i18n/nls.pt-br.json +5 -1
  12. package/i18n/nls.pt-pt.json +5 -1
  13. package/i18n/nls.ru.json +5 -1
  14. package/i18n/nls.zh-cn.json +5 -1
  15. package/lib/browser/common-frontend-contribution.d.ts +11 -0
  16. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  17. package/lib/browser/common-frontend-contribution.js +97 -14
  18. package/lib/browser/common-frontend-contribution.js.map +1 -1
  19. package/lib/browser/context-menu-renderer.d.ts +5 -0
  20. package/lib/browser/context-menu-renderer.d.ts.map +1 -1
  21. package/lib/browser/label-parser.d.ts +8 -0
  22. package/lib/browser/label-parser.d.ts.map +1 -1
  23. package/lib/browser/label-parser.js +14 -0
  24. package/lib/browser/label-parser.js.map +1 -1
  25. package/lib/browser/label-parser.spec.js +33 -0
  26. package/lib/browser/label-parser.spec.js.map +1 -1
  27. package/lib/browser/menu/browser-context-menu-renderer.d.ts +1 -1
  28. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  29. package/lib/browser/menu/browser-context-menu-renderer.js +2 -2
  30. package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
  31. package/lib/browser/menu/browser-menu-plugin.d.ts +1 -1
  32. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  33. package/lib/browser/menu/browser-menu-plugin.js +2 -2
  34. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  35. package/lib/browser/performance/frontend-stopwatch.d.ts.map +1 -1
  36. package/lib/browser/performance/frontend-stopwatch.js +6 -2
  37. package/lib/browser/performance/frontend-stopwatch.js.map +1 -1
  38. package/lib/browser/preferences/preference-contribution.d.ts +2 -0
  39. package/lib/browser/preferences/preference-contribution.d.ts.map +1 -1
  40. package/lib/browser/preferences/preference-contribution.js +48 -24
  41. package/lib/browser/preferences/preference-contribution.js.map +1 -1
  42. package/lib/browser/saveable.d.ts +15 -1
  43. package/lib/browser/saveable.d.ts.map +1 -1
  44. package/lib/browser/saveable.js +34 -1
  45. package/lib/browser/saveable.js.map +1 -1
  46. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts +46 -1
  47. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts.map +1 -1
  48. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js +87 -6
  49. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js.map +1 -1
  50. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.d.ts +20 -2
  51. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.d.ts.map +1 -1
  52. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.js +28 -1
  53. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.js.map +1 -1
  54. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +25 -1
  55. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
  56. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +79 -7
  57. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
  58. package/lib/browser/shell/tab-bars.d.ts.map +1 -1
  59. package/lib/browser/shell/tab-bars.js +9 -1
  60. package/lib/browser/shell/tab-bars.js.map +1 -1
  61. package/lib/browser/tree/tree-model.d.ts +2 -0
  62. package/lib/browser/tree/tree-model.d.ts.map +1 -1
  63. package/lib/browser/tree/tree-model.js +6 -0
  64. package/lib/browser/tree/tree-model.js.map +1 -1
  65. package/lib/browser/tree/tree-widget.d.ts +18 -0
  66. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  67. package/lib/browser/tree/tree-widget.js +57 -0
  68. package/lib/browser/tree/tree-widget.js.map +1 -1
  69. package/lib/browser/tree/tree.d.ts +18 -0
  70. package/lib/browser/tree/tree.d.ts.map +1 -1
  71. package/lib/browser/tree/tree.js +6 -0
  72. package/lib/browser/tree/tree.js.map +1 -1
  73. package/lib/browser/widgets/enhanced-preview-widget.d.ts +7 -0
  74. package/lib/browser/widgets/enhanced-preview-widget.d.ts.map +1 -0
  75. package/lib/browser/widgets/enhanced-preview-widget.js +27 -0
  76. package/lib/browser/widgets/enhanced-preview-widget.js.map +1 -0
  77. package/lib/browser/window-contribution.js +1 -1
  78. package/lib/browser/window-contribution.js.map +1 -1
  79. package/lib/common/array-utils.d.ts +7 -0
  80. package/lib/common/array-utils.d.ts.map +1 -1
  81. package/lib/common/array-utils.js +21 -0
  82. package/lib/common/array-utils.js.map +1 -1
  83. package/lib/common/event.d.ts +5 -0
  84. package/lib/common/event.d.ts.map +1 -1
  85. package/lib/common/event.js +5 -1
  86. package/lib/common/event.js.map +1 -1
  87. package/lib/common/menu/menu-model-registry.d.ts +12 -1
  88. package/lib/common/menu/menu-model-registry.d.ts.map +1 -1
  89. package/lib/common/menu/menu-model-registry.js +46 -0
  90. package/lib/common/menu/menu-model-registry.js.map +1 -1
  91. package/lib/common/performance/measurement.d.ts +21 -0
  92. package/lib/common/performance/measurement.d.ts.map +1 -1
  93. package/lib/common/performance/stopwatch.d.ts +10 -2
  94. package/lib/common/performance/stopwatch.d.ts.map +1 -1
  95. package/lib/common/performance/stopwatch.js +34 -11
  96. package/lib/common/performance/stopwatch.js.map +1 -1
  97. package/lib/common/promise-util.d.ts +4 -0
  98. package/lib/common/promise-util.d.ts.map +1 -1
  99. package/lib/common/promise-util.js +11 -1
  100. package/lib/common/promise-util.js.map +1 -1
  101. package/lib/common/promise-util.spec.js +26 -12
  102. package/lib/common/promise-util.spec.js.map +1 -1
  103. package/lib/common/types.d.ts +4 -0
  104. package/lib/common/types.d.ts.map +1 -1
  105. package/lib/common/types.js +16 -1
  106. package/lib/common/types.js.map +1 -1
  107. package/lib/common/uri.d.ts +1 -0
  108. package/lib/common/uri.d.ts.map +1 -1
  109. package/lib/common/uri.js +3 -0
  110. package/lib/common/uri.js.map +1 -1
  111. package/lib/electron-browser/menu/electron-context-menu-renderer.js +2 -2
  112. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  113. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +1 -1
  114. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts.map +1 -1
  115. package/lib/electron-browser/menu/electron-main-menu-factory.js +2 -2
  116. package/lib/electron-browser/menu/electron-main-menu-factory.js.map +1 -1
  117. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  118. package/lib/electron-main/electron-main-application.js +3 -0
  119. package/lib/electron-main/electron-main-application.js.map +1 -1
  120. package/lib/node/backend-application.d.ts +5 -1
  121. package/lib/node/backend-application.d.ts.map +1 -1
  122. package/lib/node/backend-application.js +28 -5
  123. package/lib/node/backend-application.js.map +1 -1
  124. package/lib/node/logger-cli-contribution.spec.js +1 -1
  125. package/lib/node/logger-cli-contribution.spec.js.map +1 -1
  126. package/lib/node/main.d.ts +2 -5
  127. package/lib/node/main.d.ts.map +1 -1
  128. package/lib/node/main.js.map +1 -1
  129. package/lib/node/performance/node-stopwatch.js +1 -1
  130. package/lib/node/performance/node-stopwatch.js.map +1 -1
  131. package/package.json +7 -7
  132. package/src/browser/common-frontend-contribution.ts +107 -17
  133. package/src/browser/context-menu-renderer.ts +5 -0
  134. package/src/browser/label-parser.spec.ts +38 -0
  135. package/src/browser/label-parser.ts +15 -0
  136. package/src/browser/menu/browser-context-menu-renderer.ts +2 -2
  137. package/src/browser/menu/browser-menu-plugin.ts +2 -2
  138. package/src/browser/performance/frontend-stopwatch.ts +5 -2
  139. package/src/browser/preferences/preference-contribution.ts +49 -24
  140. package/src/browser/saveable.ts +41 -2
  141. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.ts +94 -8
  142. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.ts +28 -1
  143. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +87 -8
  144. package/src/browser/shell/tab-bars.ts +8 -1
  145. package/src/browser/style/tabs.css +32 -2
  146. package/src/browser/tree/tree-model.ts +8 -0
  147. package/src/browser/tree/tree-widget.tsx +66 -0
  148. package/src/browser/tree/tree.ts +27 -0
  149. package/src/browser/widgets/enhanced-preview-widget.ts +27 -0
  150. package/src/browser/window-contribution.ts +1 -1
  151. package/src/common/array-utils.ts +20 -0
  152. package/src/common/event.ts +12 -2
  153. package/src/common/i18n/nls.metadata.json +5616 -5359
  154. package/src/common/menu/menu-model-registry.ts +50 -0
  155. package/src/common/performance/measurement.ts +26 -0
  156. package/src/common/performance/stopwatch.ts +38 -12
  157. package/src/common/promise-util.spec.ts +43 -12
  158. package/src/common/promise-util.ts +12 -0
  159. package/src/common/types.ts +17 -0
  160. package/src/common/uri.ts +4 -0
  161. package/src/electron-browser/menu/electron-context-menu-renderer.ts +2 -2
  162. package/src/electron-browser/menu/electron-main-menu-factory.ts +2 -2
  163. package/src/electron-main/electron-main-application.ts +3 -0
  164. package/src/node/backend-application.ts +30 -5
  165. package/src/node/logger-cli-contribution.spec.ts +1 -1
  166. package/src/node/main.ts +1 -6
  167. package/src/node/performance/node-stopwatch.ts +1 -1
@@ -197,6 +197,52 @@ let MenuModelRegistry = class MenuModelRegistry {
197
197
  getMenu(menuPath = []) {
198
198
  return this.findGroup(menuPath);
199
199
  }
200
+ /**
201
+ * Checks the given menu model whether it will show a menu with a single submenu.
202
+ *
203
+ * @param fullMenuModel the menu model to analyze
204
+ * @param menuPath the menu's path
205
+ * @returns if the menu will show a single submenu this returns a menu that will show the child elements of the submenu,
206
+ * otherwise the given `fullMenuModel` is return
207
+ */
208
+ removeSingleRootNode(fullMenuModel, menuPath) {
209
+ // check whether all children are compound menus and that there is only one child that has further children
210
+ if (!this.allChildrenCompound(fullMenuModel.children)) {
211
+ return fullMenuModel;
212
+ }
213
+ let nonEmptyNode = undefined;
214
+ for (const child of fullMenuModel.children) {
215
+ if (!this.isEmpty(child.children || [])) {
216
+ if (nonEmptyNode === undefined) {
217
+ nonEmptyNode = child;
218
+ }
219
+ else {
220
+ return fullMenuModel;
221
+ }
222
+ }
223
+ }
224
+ if (menu_types_1.CompoundMenuNode.is(nonEmptyNode) && nonEmptyNode.children.length === 1 && menu_types_1.CompoundMenuNode.is(nonEmptyNode.children[0])) {
225
+ nonEmptyNode = nonEmptyNode.children[0];
226
+ }
227
+ return menu_types_1.CompoundMenuNode.is(nonEmptyNode) ? nonEmptyNode : fullMenuModel;
228
+ }
229
+ allChildrenCompound(children) {
230
+ return children.every(menu_types_1.CompoundMenuNode.is);
231
+ }
232
+ isEmpty(children) {
233
+ if (children.length === 0) {
234
+ return true;
235
+ }
236
+ if (!this.allChildrenCompound(children)) {
237
+ return false;
238
+ }
239
+ for (const child of children) {
240
+ if (!this.isEmpty(child.children || [])) {
241
+ return false;
242
+ }
243
+ }
244
+ return true;
245
+ }
200
246
  /**
201
247
  * Returns the {@link MenuPath path} at which a given menu node can be accessed from this registry, if it can be determined.
202
248
  * Returns `undefined` if the `parent` of any node in the chain is unknown.
@@ -1 +1 @@
1
- {"version":3,"file":"menu-model-registry.js","sourceRoot":"","sources":["../../../src/common/menu/menu-model-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-model-registry.js","sourceRoot":"","sources":["../../../src/common/menu/menu-model-registry.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;;;;;;;;;;;;AAEhF,yCAAsD;AACtD,8CAA2C;AAC3C,wCAAsD;AACtD,oEAAgE;AAChE,+DAAoF;AACpF,6CAAyH;AACzH,yDAAoD;AAEvC,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAoC3D;;;;GAIG;AAEH,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAI1B,YAEuB,aAAqD,EAC5B,QAAyB;QADlD,kBAAa,GAAb,aAAa,CAAwC;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QANtD,SAAI,GAAG,IAAI,uCAAiB,CAAC,EAAE,CAAC,CAAC;QACjC,wBAAmB,GAAG,IAAI,GAAG,EAAmC,CAAC;IAMhF,CAAC;IAEL,OAAO;QACH,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,EAAE;YACzD,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;SAC/B;IACL,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,QAAkB,EAAE,IAAgB;QACnD,MAAM,QAAQ,GAAG,IAAI,iCAAc,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,QAA2B,EAAE,QAAkB,EAAE,KAAc;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,QAA2B,EAAE,KAAc;QACnD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC;aAAE;YAC/E,IAAI,KAAK,EAAE;gBACP,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;aAC1C;YACD,OAAO,MAAM,CAAC;SACjB;aAAM;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;SACpE;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,QAAkB,EAAE,KAAa,EAAE,OAAwB;QACvE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;SACzD;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE;YACZ,SAAS,GAAG,IAAI,uCAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAClE,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACpC;aAAM;YACH,SAAS,CAAC,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/C,OAAO,uBAAU,CAAC,IAAI,CAAC;SAC1B;IACL,CAAC;IAED,0BAA0B,CAAC,EAAU,EAAE,KAAa,EAAE,OAAwB;QAC1E,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YAClC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,2CAA2C,CAAC,CAAC;SACjG;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,uCAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5E,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,WAAW,CAAC,UAA6B,EAAE,OAA0B,EAAE,OAAwB,EAAE,KAAc;QAC3G,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,8CAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAuBD,oBAAoB,CAAC,iBAAgD,EAAE,QAAmB;QACtF,MAAM,EAAE,GAAG,uBAAU,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS;YACrE,CAAC,CAAC,iBAAO,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAAE;gBAClD,CAAC,CAAC,iBAAiB,CAAC;QAE5B,IAAI,QAAQ,EAAE;YACV,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACtB,OAAO;SACV;QAED,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,EAAU;QACzB,MAAM,OAAO,GAAG,CAAC,IAA6B,EAAE,EAAE;YAC9C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACzB,IAAI,6BAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBAClC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;oBACpB,OAAO,CAAC,IAAI,CAAC,CAAC;iBACjB;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;;;OAGG;IACO,SAAS,CAAC,QAAkB,EAAE,OAAwB;QAC5D,IAAI,WAAW,GAA4B,IAAI,CAAC,IAAI,CAAC;QACrD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC5B,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SACjE;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;OAGG;IACO,WAAW,CAAC,OAAgC,EAAE,MAAc,EAAE,OAAwB;QAC5F,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QACxD,IAAI,6BAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACjC,OAAO,GAAG,CAAC;SACd;QACD,IAAI,GAAG,EAAE;YACL,MAAM,IAAI,KAAK,CAAC,IAAI,MAAM,wBAAwB,CAAC,CAAC;SACvD;QACD,MAAM,MAAM,GAAG,IAAI,uCAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1E,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,WAAqB,EAAE;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;OAOG;IACH,oBAAoB,CAAC,aAAsC,EAAE,QAAkB;QAC3E,2GAA2G;QAC3G,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;YACnD,OAAO,aAAa,CAAC;SACxB;QACD,IAAI,YAAY,GAAG,SAAS,CAAC;QAC7B,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,QAAQ,EAAE;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE;gBACrC,IAAI,YAAY,KAAK,SAAS,EAAE;oBAC5B,YAAY,GAAG,KAAK,CAAC;iBACxB;qBAAM;oBACH,OAAO,aAAa,CAAC;iBACxB;aACJ;SACJ;QAED,IAAI,6BAAgB,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,6BAAgB,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YAC1H,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAC3C;QAED,OAAO,6BAAgB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC;IAC5E,CAAC;IAES,mBAAmB,CAAC,QAAiC;QAC3D,OAAO,QAAQ,CAAC,KAAK,CAAC,6BAAgB,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;IAES,OAAO,CAAC,QAAiC;QAC/C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE;YACrC,OAAO,KAAK,CAAC;SAChB;QACD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE;gBACrC,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,IAAc;QAClB,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAe,EAAE,CAAC;QAC/B,IAAI,IAAI,GAAyB,IAAI,CAAC;QAEtC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACpC,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;gBACpB,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC;aAChC;YACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1B,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;SACtB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ,CAAA;AAnQY,iBAAiB;IAD7B,IAAA,sBAAU,GAAE;IAMJ,WAAA,IAAA,kBAAM,EAAC,4CAAoB,CAAC,CAAA;IAAE,WAAA,IAAA,iBAAK,EAAC,wBAAgB,CAAC,CAAA;IAErD,WAAA,IAAA,kBAAM,EAAC,yBAAe,CAAC,CAAA;6CAA8B,yBAAe;GAPhE,iBAAiB,CAmQ7B;AAnQY,8CAAiB"}
@@ -87,5 +87,26 @@ export interface MeasurementOptions {
87
87
  * @see {@link thresholdLogLevel}
88
88
  */
89
89
  thresholdMillis?: number;
90
+ /**
91
+ * Flag to indicate whether the stopwatch should store measurement results for later retrieval.
92
+ * For example the cache can be used to retrieve measurements which were taken during startup before a listener had a chance to register.
93
+ */
94
+ storeResults?: boolean;
95
+ }
96
+ /**
97
+ * Captures the result of a {@link Measurement} in a serializable format.
98
+ */
99
+ export interface MeasurementResult {
100
+ /** The measurement name. This may show up in the performance measurement framework appropriate to the application context. */
101
+ name: string;
102
+ /** The time when the measurement recording has been started */
103
+ startTime: number;
104
+ /**
105
+ * The elapsed time measured, if it has been {@link stop stopped} and measured, or `NaN` if the platform disabled
106
+ * performance measurement.
107
+ */
108
+ elapsed: number;
109
+ /** An optional label for the application the start of which (in real time) is the basis of all measurements. */
110
+ owner?: string;
90
111
  }
91
112
  //# sourceMappingURL=measurement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"measurement.d.ts","sourceRoot":"","sources":["../../../src/common/performance/measurement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;gFAcgF;AAIhF,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,WAAW;IACxB;;;OAGG;IACH,IAAI,IAAI,MAAM,CAAC;IAEf,8HAA8H;IAC9H,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;OAMG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAElD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEpD;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEnD;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEnD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,8GAA8G;IAC9G,eAAe,CAAC,EAAE,QAAQ,CAAC;IAE3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"measurement.d.ts","sourceRoot":"","sources":["../../../src/common/performance/measurement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;gFAcgF;AAIhF,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,WAAW;IACxB;;;OAGG;IACH,IAAI,IAAI,MAAM,CAAC;IAEf,8HAA8H;IAC9H,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;OAMG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAElD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEpD;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEnD;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEnD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,8GAA8G;IAC9G,eAAe,CAAC,EAAE,QAAQ,CAAC;IAE3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,8HAA8H;IAC9H,IAAI,EAAE,MAAM,CAAC;IAEb,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,gHAAgH;IAChH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -15,7 +15,8 @@
15
15
  *******************************************************************************/
16
16
  import { ILogger, LogLevel } from '../logger';
17
17
  import { MaybePromise } from '../types';
18
- import { Measurement, MeasurementOptions } from './measurement';
18
+ import { Measurement, MeasurementOptions, MeasurementResult } from './measurement';
19
+ import { Emitter, Event } from '../event';
19
20
  /**
20
21
  * Configuration of the log messages written by a {@link Measurement}.
21
22
  */
@@ -35,6 +36,9 @@ interface LogOptions extends MeasurementOptions {
35
36
  export declare abstract class Stopwatch {
36
37
  protected readonly defaultLogOptions: LogOptions;
37
38
  protected readonly logger: ILogger;
39
+ protected _storedMeasurements: MeasurementResult[];
40
+ protected onDidAddMeasurementResultEmitter: Emitter<MeasurementResult>;
41
+ get onDidAddMeasurementResult(): Event<MeasurementResult>;
38
42
  constructor(defaultLogOptions: LogOptions);
39
43
  /**
40
44
  * Create a {@link Measurement} that will compute its elapsed time when logged.
@@ -58,11 +62,15 @@ export declare abstract class Stopwatch {
58
62
  * @see {@link MeasurementOptions.thresholdMillis}
59
63
  */
60
64
  startAsync<T>(name: string, description: string, computation: () => MaybePromise<T>, options?: MeasurementOptions): Promise<T>;
61
- protected createMeasurement(name: string, measurement: () => number, options?: MeasurementOptions): Measurement;
65
+ protected createMeasurement(name: string, measure: () => {
66
+ startTime: number;
67
+ duration: number;
68
+ }, options?: MeasurementOptions): Measurement;
62
69
  protected mergeLogOptions(logOptions?: Partial<LogOptions>): LogOptions;
63
70
  protected atLevel(logOptions: LogOptions, levelOverride?: LogLevel, optionalArgs?: any[]): LogOptions;
64
71
  protected logLevel(elapsed: number, options?: Partial<LogOptions>): LogLevel;
65
72
  protected log(measurement: Measurement, activity: string, options: LogOptions): void;
73
+ get storedMeasurements(): ReadonlyArray<MeasurementResult>;
66
74
  }
67
75
  export {};
68
76
  //# sourceMappingURL=stopwatch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stopwatch.d.ts","sourceRoot":"","sources":["../../../src/common/performance/stopwatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;gFAcgF;AAKhF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAKhE;;GAEG;AACH,UAAU,UAAW,SAAQ,kBAAkB;IAC3C,gGAAgG;IAChG,GAAG,EAAE,MAAM,MAAM,CAAC;IAElB,gHAAgH;IAChH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qGAAqG;IACrG,aAAa,CAAC,EAAE,QAAQ,CAAC;IAEzB,gIAAgI;IAChI,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,8BACsB,SAAS;IAKf,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU;IAF5D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAEJ,iBAAiB,EAAE,UAAU;IAM5D;;;;;;OAMG;aACa,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAE9E;;;;;;;;;;;;OAYG;IACU,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAa3I,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAqB/G,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU;IAQvE,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,GAAG,UAAU;IAIrG,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,QAAQ;IAQ5E,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;CAsBvF"}
1
+ {"version":3,"file":"stopwatch.d.ts","sourceRoot":"","sources":["../../../src/common/performance/stopwatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;gFAcgF;AAKhF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAK1C;;GAEG;AACH,UAAU,UAAW,SAAQ,kBAAkB;IAC3C,gGAAgG;IAChG,GAAG,EAAE,MAAM,MAAM,CAAC;IAElB,gHAAgH;IAChH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qGAAqG;IACrG,aAAa,CAAC,EAAE,QAAQ,CAAC;IAEzB,gIAAgI;IAChI,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,8BACsB,SAAS;IAYf,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU;IAT5D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC,SAAS,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,CAAM;IAExD,SAAS,CAAC,gCAAgC,6BAAoC;IAC9E,IAAI,yBAAyB,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAExD;gBAE8B,iBAAiB,EAAE,UAAU;IAS5D;;;;;;OAMG;aACa,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAE9E;;;;;;;;;;;;OAYG;IACU,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAa3I,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAgC5I,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU;IAQvE,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,GAAG,UAAU;IAIrG,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,QAAQ;IAQ5E,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;IAsBpF,IAAI,kBAAkB,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAEzD;CAEJ"}
@@ -28,6 +28,7 @@ exports.Stopwatch = void 0;
28
28
  /* eslint-disable @typescript-eslint/no-explicit-any */
29
29
  const inversify_1 = require("inversify");
30
30
  const logger_1 = require("../logger");
31
+ const event_1 = require("../event");
31
32
  /** The default log level for measurements that are not otherwise configured with a default. */
32
33
  const DEFAULT_LOG_LEVEL = logger_1.LogLevel.INFO;
33
34
  /**
@@ -36,9 +37,17 @@ const DEFAULT_LOG_LEVEL = logger_1.LogLevel.INFO;
36
37
  let Stopwatch = class Stopwatch {
37
38
  constructor(defaultLogOptions) {
38
39
  this.defaultLogOptions = defaultLogOptions;
40
+ this._storedMeasurements = [];
41
+ this.onDidAddMeasurementResultEmitter = new event_1.Emitter();
39
42
  if (!defaultLogOptions.defaultLogLevel) {
40
43
  defaultLogOptions.defaultLogLevel = DEFAULT_LOG_LEVEL;
41
44
  }
45
+ if (defaultLogOptions.storeResults === undefined) {
46
+ defaultLogOptions.storeResults = true;
47
+ }
48
+ }
49
+ get onDidAddMeasurementResult() {
50
+ return this.onDidAddMeasurementResultEmitter.event;
42
51
  }
43
52
  /**
44
53
  * Wrap an asynchronous function in a {@link Measurement} that logs itself on completion.
@@ -66,23 +75,34 @@ let Stopwatch = class Stopwatch {
66
75
  }
67
76
  return result;
68
77
  }
69
- createMeasurement(name, measurement, options) {
78
+ createMeasurement(name, measure, options) {
70
79
  const logOptions = this.mergeLogOptions(options);
71
- const result = {
80
+ const measurement = {
72
81
  name,
73
82
  stop: () => {
74
- if (result.elapsed === undefined) {
75
- result.elapsed = measurement();
83
+ if (measurement.elapsed === undefined) {
84
+ const { startTime, duration } = measure();
85
+ measurement.elapsed = duration;
86
+ const result = {
87
+ name,
88
+ elapsed: duration,
89
+ startTime,
90
+ owner: logOptions.owner
91
+ };
92
+ if (logOptions.storeResults) {
93
+ this._storedMeasurements.push(result);
94
+ }
95
+ this.onDidAddMeasurementResultEmitter.fire(result);
76
96
  }
77
- return result.elapsed;
97
+ return measurement.elapsed;
78
98
  },
79
- log: (activity, ...optionalArgs) => this.log(result, activity, this.atLevel(logOptions, undefined, optionalArgs)),
80
- debug: (activity, ...optionalArgs) => this.log(result, activity, this.atLevel(logOptions, logger_1.LogLevel.DEBUG, optionalArgs)),
81
- info: (activity, ...optionalArgs) => this.log(result, activity, this.atLevel(logOptions, logger_1.LogLevel.INFO, optionalArgs)),
82
- warn: (activity, ...optionalArgs) => this.log(result, activity, this.atLevel(logOptions, logger_1.LogLevel.WARN, optionalArgs)),
83
- error: (activity, ...optionalArgs) => this.log(result, activity, this.atLevel(logOptions, logger_1.LogLevel.ERROR, optionalArgs)),
99
+ log: (activity, ...optionalArgs) => this.log(measurement, activity, this.atLevel(logOptions, undefined, optionalArgs)),
100
+ debug: (activity, ...optionalArgs) => this.log(measurement, activity, this.atLevel(logOptions, logger_1.LogLevel.DEBUG, optionalArgs)),
101
+ info: (activity, ...optionalArgs) => this.log(measurement, activity, this.atLevel(logOptions, logger_1.LogLevel.INFO, optionalArgs)),
102
+ warn: (activity, ...optionalArgs) => this.log(measurement, activity, this.atLevel(logOptions, logger_1.LogLevel.WARN, optionalArgs)),
103
+ error: (activity, ...optionalArgs) => this.log(measurement, activity, this.atLevel(logOptions, logger_1.LogLevel.ERROR, optionalArgs)),
84
104
  };
85
- return result;
105
+ return measurement;
86
106
  }
87
107
  mergeLogOptions(logOptions) {
88
108
  const result = { ...this.defaultLogOptions };
@@ -121,6 +141,9 @@ let Stopwatch = class Stopwatch {
121
141
  const whatWasMeasured = options.context ? `[${options.context}] ${activity}` : activity;
122
142
  this.logger.log(level, `${whatWasMeasured}: ${elapsed.toFixed(1)} ms [${timeFromStart}]`, ...((_a = options.arguments) !== null && _a !== void 0 ? _a : []));
123
143
  }
144
+ get storedMeasurements() {
145
+ return this._storedMeasurements;
146
+ }
124
147
  };
125
148
  __decorate([
126
149
  (0, inversify_1.inject)(logger_1.ILogger),
@@ -1 +1 @@
1
- {"version":3,"file":"stopwatch.js","sourceRoot":"","sources":["../../../src/common/performance/stopwatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stopwatch.js","sourceRoot":"","sources":["../../../src/common/performance/stopwatch.ts"],"names":[],"mappings":"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"}
@@ -45,4 +45,8 @@ export declare function delay<T>(ms: number): (value: T) => Promise<T>;
45
45
  export declare function wait(ms: number): Promise<void>;
46
46
  export declare function waitForEvent<T>(event: Event<T>, ms: number, thisArg?: any, disposables?: Disposable[]): Promise<T>;
47
47
  export declare function isThenable<T>(obj: unknown): obj is Promise<T>;
48
+ /**
49
+ * Returns with a promise that waits until the first promise resolves to `true`.
50
+ */
51
+ export declare function firstTrue(...promises: readonly Promise<boolean>[]): Promise<boolean>;
48
52
  //# sourceMappingURL=promise-util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"promise-util.d.ts","sourceRoot":"","sources":["../../src/common/promise-util.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAgC,MAAM,gBAAgB,CAAC;AAGjF;;;GAGG;AACH,qBAAa,QAAQ,CAAC,CAAC,GAAG,IAAI;IAC1B,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,CAAgB;IAC7D,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC7C,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEhC,OAAO,aAML;IAEF,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI;CAK3D;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQjF;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAIzE;AAED,wBAAsB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CActG;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAE7D;AAED;;;GAGG;AACH,wBAAsB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD;AAGD,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAclH;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAE7D"}
1
+ {"version":3,"file":"promise-util.d.ts","sourceRoot":"","sources":["../../src/common/promise-util.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAgC,MAAM,gBAAgB,CAAC;AAGjF;;;GAGG;AACH,qBAAa,QAAQ,CAAC,CAAC,GAAG,IAAI;IAC1B,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,CAAgB;IAC7D,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC7C,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEhC,OAAO,aAML;IAEF,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI;CAK3D;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQjF;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAIzE;AAED,wBAAsB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CActG;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAE7D;AAED;;;GAGG;AACH,wBAAsB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD;AAGD,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAclH;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAE7D;AAED;;GAEG;AAEH,wBAAgB,SAAS,CAAC,GAAG,QAAQ,EAAE,SAAS,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAMpF"}
@@ -15,7 +15,7 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.isThenable = exports.waitForEvent = exports.wait = exports.delay = exports.retry = exports.timeoutReject = exports.timeout = exports.Deferred = void 0;
18
+ exports.firstTrue = exports.isThenable = exports.waitForEvent = exports.wait = exports.delay = exports.retry = exports.timeoutReject = exports.timeout = exports.Deferred = void 0;
19
19
  const cancellation_1 = require("./cancellation");
20
20
  const types_1 = require("./types");
21
21
  /**
@@ -120,4 +120,14 @@ function isThenable(obj) {
120
120
  return (0, types_1.isObject)(obj) && (0, types_1.isFunction)(obj.then);
121
121
  }
122
122
  exports.isThenable = isThenable;
123
+ /**
124
+ * Returns with a promise that waits until the first promise resolves to `true`.
125
+ */
126
+ // Based on https://stackoverflow.com/a/51160727/5529090
127
+ function firstTrue(...promises) {
128
+ const newPromises = promises.map(promise => new Promise((resolve, reject) => promise.then(result => result && resolve(true), reject)));
129
+ newPromises.push(Promise.all(promises).then(() => false));
130
+ return Promise.race(newPromises);
131
+ }
132
+ exports.firstTrue = firstTrue;
123
133
  //# sourceMappingURL=promise-util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"promise-util.js","sourceRoot":"","sources":["../../src/common/promise-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promise-util.js","sourceRoot":"","sources":["../../src/common/promise-util.ts"],"names":[],"mappings":"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"}
@@ -15,21 +15,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  //
16
16
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
17
17
  // *****************************************************************************
18
- const assert = require("assert");
18
+ const assert = require("assert/strict");
19
19
  const promise_util_1 = require("./promise-util");
20
20
  const event_1 = require("./event");
21
+ const cancellation_1 = require("./cancellation");
21
22
  describe('promise-util', () => {
22
- it('should time out', async () => {
23
- const emitter = new event_1.Emitter();
24
- try {
25
- await (0, promise_util_1.waitForEvent)(emitter.event, 1000);
26
- assert.fail('did not time out');
27
- }
28
- catch (e) {
29
- // OK
30
- }
31
- });
32
- describe('promise-util', () => {
23
+ describe('waitForEvent', () => {
24
+ it('should time out', async () => {
25
+ const emitter = new event_1.Emitter();
26
+ await assert.rejects((0, promise_util_1.waitForEvent)(emitter.event, 1000), reason => reason instanceof cancellation_1.CancellationError);
27
+ });
33
28
  it('should get event', async () => {
34
29
  const emitter = new event_1.Emitter();
35
30
  setTimeout(() => {
@@ -38,5 +33,24 @@ describe('promise-util', () => {
38
33
  assert.strictEqual(await (0, promise_util_1.waitForEvent)(emitter.event, 1000), 'abcd');
39
34
  });
40
35
  });
36
+ describe('firstTrue', () => {
37
+ it('should resolve to false when the promises arg is empty', async () => {
38
+ const actual = await (0, promise_util_1.firstTrue)();
39
+ assert.strictEqual(actual, false);
40
+ });
41
+ it('should resolve to true when the first promise resolves to true', async () => {
42
+ const signals = [];
43
+ const createPromise = (signal, timeout, result) => new Promise(resolve => setTimeout(() => {
44
+ signals.push(signal);
45
+ resolve(result);
46
+ }, timeout));
47
+ const actual = await (0, promise_util_1.firstTrue)(createPromise('a', 10, false), createPromise('b', 20, false), createPromise('c', 30, true), createPromise('d', 40, false), createPromise('e', 50, true));
48
+ assert.strictEqual(actual, true);
49
+ assert.deepStrictEqual(signals, ['a', 'b', 'c']);
50
+ });
51
+ it('should reject when one of the promises rejects', async () => {
52
+ await assert.rejects((0, promise_util_1.firstTrue)(new Promise(resolve => setTimeout(() => resolve(false), 10)), new Promise(resolve => setTimeout(() => resolve(false), 20)), new Promise((_, reject) => setTimeout(() => reject(new Error('my test error')), 30)), new Promise(resolve => setTimeout(() => resolve(true), 40))), /Error: my test error/);
53
+ });
54
+ });
41
55
  });
42
56
  //# sourceMappingURL=promise-util.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"promise-util.spec.js","sourceRoot":"","sources":["../../src/common/promise-util.spec.ts"],"names":[],"mappings":";;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,iCAAiC;AACjC,iDAA8C;AAC9C,mCAAkC;AAElC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,OAAO,GAAG,IAAI,eAAO,EAAU,CAAC;QACtC,IAAI;YACA,MAAM,IAAA,2BAAY,EAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACnC;QAAC,OAAO,CAAC,EAAE;YACR,KAAK;SACR;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,OAAO,GAAG,IAAI,eAAO,EAAU,CAAC;YACtC,UAAU,CAAC,GAAG,EAAE;gBACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,MAAM,CAAC,WAAW,CAAC,MAAM,IAAA,2BAAY,EAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"promise-util.spec.js","sourceRoot":"","sources":["../../src/common/promise-util.spec.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,10 @@ export declare function isNumber(value: unknown): value is number;
26
26
  export declare function isError(value: unknown): value is Error;
27
27
  export declare function isErrorLike(value: unknown): value is Error;
28
28
  export declare function isFunction<T extends (...args: unknown[]) => unknown>(value: unknown): value is T;
29
+ /**
30
+ * @returns whether the provided parameter is an empty JavaScript Object or not.
31
+ */
32
+ export declare function isEmptyObject(obj: unknown): obj is object;
29
33
  export declare function isObject<T extends object>(value: unknown): value is UnknownObject<T>;
30
34
  export declare function isUndefined(value: unknown): value is undefined;
31
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.unreachable = exports.nullToUndefined = exports.isStringArray = exports.isArray = exports.isUndefined = exports.isObject = exports.isFunction = exports.isErrorLike = exports.isError = exports.isNumber = exports.isString = exports.isBoolean = exports.Prioritizeable = exports.ArrayUtils = void 0;
18
+ exports.unreachable = exports.nullToUndefined = exports.isStringArray = exports.isArray = exports.isUndefined = exports.isObject = exports.isEmptyObject = exports.isFunction = exports.isErrorLike = exports.isError = exports.isNumber = exports.isString = exports.isBoolean = exports.Prioritizeable = exports.ArrayUtils = void 0;
19
19
  var array_utils_1 = require("./array-utils");
20
20
  Object.defineProperty(exports, "ArrayUtils", { enumerable: true, get: function () { return array_utils_1.ArrayUtils; } });
21
21
  var prioritizeable_1 = require("./prioritizeable");
@@ -45,6 +45,21 @@ function isFunction(value) {
45
45
  return typeof value === 'function';
46
46
  }
47
47
  exports.isFunction = isFunction;
48
+ /**
49
+ * @returns whether the provided parameter is an empty JavaScript Object or not.
50
+ */
51
+ function isEmptyObject(obj) {
52
+ if (!isObject(obj)) {
53
+ return false;
54
+ }
55
+ for (const key in obj) {
56
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
57
+ return false;
58
+ }
59
+ }
60
+ return true;
61
+ }
62
+ exports.isEmptyObject = isEmptyObject;
48
63
  function isObject(value) {
49
64
  // eslint-disable-next-line no-null/no-null
50
65
  return typeof value === 'object' && value !== null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAgBvB,SAAgB,SAAS,CAAC,KAAc;IACpC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC;AAC7C,CAAC;AAFD,8BAEC;AAED,SAAgB,QAAQ,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,CAAC;AAChE,CAAC;AAFD,4BAEC;AAED,SAAgB,QAAQ,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,CAAC;AAChE,CAAC;AAFD,4BAEC;AAED,SAAgB,OAAO,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,CAAC;AAClC,CAAC;AAFD,0BAEC;AAED,SAAgB,WAAW,CAAC,KAAc;IACtC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACrI,CAAC;AAFD,kCAEC;AAED,uDAAuD;AACvD,SAAgB,UAAU,CAA4C,KAAc;IAChF,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACvC,CAAC;AAFD,gCAEC;AAED,SAAgB,QAAQ,CAAmB,KAAc;IACrD,2CAA2C;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACvD,CAAC;AAHD,4BAGC;AAED,SAAgB,WAAW,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,WAAW,CAAC;AACxC,CAAC;AAFD,kCAEC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CAAI,KAAc,EAAE,KAAmC,EAAE,OAAiB;IAC7F,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AACvF,CAAC;AAFD,0BAEC;AAED,SAAgB,aAAa,CAAC,KAAc;IACxC,OAAO,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACpC,CAAC;AAFD,sCAEC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAI,QAAsB;IACrD,MAAM,WAAW,GAAG,EAAE,GAAG,QAAQ,EAAuB,CAAC;IACzD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;QACxB,2CAA2C;QAC3C,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE;YAC/E,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;SAChC;KACJ;IACD,OAAO,WAAW,CAAC;AACvB,CAAC;AATD,0CASC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,MAAa,EAAE,UAAkB,gBAAgB;IACzE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAFD,kCAEC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { Path } from './path';
3
3
  export declare class URI {
4
4
  static fromComponents(components: UriComponents): URI;
5
5
  static fromFilePath(path: string): URI;
6
+ static isUri(uri: unknown): boolean;
6
7
  private readonly codeUri;
7
8
  private _path;
8
9
  constructor(uri?: string | Uri);
@@ -1 +1 @@
1
- {"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../src/common/uri.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,GAAG;WAEE,cAAc,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG;WAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;IAI7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAC9B,OAAO,CAAC,KAAK,CAAmB;gBAEpB,GAAG,GAAE,MAAM,GAAG,GAAQ;IAQlC;;;;OAIG;IACH,IAAI,WAAW,IAAI,MAAM,CASxB;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,GAAG,EAAE,CASxB;IAED,IAAI,MAAM,IAAI,GAAG,CAKhB;IAED,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS;IAOpC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG;IAIjC;;OAEG;IACH,iBAAiB,CAAC,GAAG,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,SAAS;IAOzE;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAQ/B;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG;IASrC;;OAEG;IACH,gBAAgB,IAAI,GAAG;IAIvB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG;IASlC;;OAEG;IACH,WAAW,IAAI,GAAG;IAIlB;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG;IAS7B;;OAEG;IACH,YAAY,IAAI,GAAG;IAInB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG;IASnC;;OAEG;IACH,eAAe,IAAI,GAAG;IAItB;;OAEG;IACH,aAAa,IAAI,GAAG;IAIpB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,IAAI,IAAI,IAAI,CAKf;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM;IAIxC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,OAAc,GAAG,OAAO;IAUzD,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,OAAc,GAAG,OAAO;IAajE,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE;IAU7C,OAAO,CAAC,aAAa;IAIrB,YAAY,IAAI,aAAa;CAShC;AAED,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"uri.d.ts","sourceRoot":"","sources":["../../src/common/uri.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,GAAG;WAEE,cAAc,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG;WAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;WAI/B,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAC9B,OAAO,CAAC,KAAK,CAAmB;gBAEpB,GAAG,GAAE,MAAM,GAAG,GAAQ;IAQlC;;;;OAIG;IACH,IAAI,WAAW,IAAI,MAAM,CASxB;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,GAAG,EAAE,CASxB;IAED,IAAI,MAAM,IAAI,GAAG,CAKhB;IAED,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS;IAOpC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG;IAIjC;;OAEG;IACH,iBAAiB,CAAC,GAAG,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,SAAS;IAOzE;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG;IAQ/B;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG;IASrC;;OAEG;IACH,gBAAgB,IAAI,GAAG;IAIvB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG;IASlC;;OAEG;IACH,WAAW,IAAI,GAAG;IAIlB;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG;IAS7B;;OAEG;IACH,YAAY,IAAI,GAAG;IAInB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG;IASnC;;OAEG;IACH,eAAe,IAAI,GAAG;IAItB;;OAEG;IACH,aAAa,IAAI,GAAG;IAIpB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,IAAI,IAAI,IAAI,CAKf;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM;IAIxC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,OAAc,GAAG,OAAO;IAUzD,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,OAAc,GAAG,OAAO;IAajE,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE;IAU7C,OAAO,CAAC,aAAa;IAIrB,YAAY,IAAI,aAAa;CAShC;AAED,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAe,GAAG,CAAC"}
package/lib/common/uri.js CHANGED
@@ -33,6 +33,9 @@ class URI {
33
33
  static fromFilePath(path) {
34
34
  return new URI(vscode_uri_1.URI.file(path));
35
35
  }
36
+ static isUri(uri) {
37
+ return vscode_uri_1.URI.isUri(uri);
38
+ }
36
39
  /**
37
40
  * TODO move implementation to `DefaultUriLabelProviderContribution.getName`
38
41
  *
@@ -1 +1 @@
1
- {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../src/common/uri.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uri.js","sourceRoot":"","sources":["../../src/common/uri.ts"],"names":[],"mappings":"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"}
@@ -98,8 +98,8 @@ let ElectronContextMenuRenderer = class ElectronContextMenuRenderer extends brow
98
98
  }
99
99
  doRender(options) {
100
100
  if (this.useNativeStyle) {
101
- const { menuPath, anchor, args, onHide, context, contextKeyService } = options;
102
- const menu = this.electronMenuFactory.createElectronContextMenu(menuPath, args, context, contextKeyService);
101
+ const { menuPath, anchor, args, onHide, context, contextKeyService, skipSingleRootNode } = options;
102
+ const menu = this.electronMenuFactory.createElectronContextMenu(menuPath, args, context, contextKeyService, skipSingleRootNode);
103
103
  const { x, y } = (0, browser_1.coordinateFromAnchor)(anchor);
104
104
  const menuHandle = window.electronTheiaCore.popup(menu, x, y, () => {
105
105
  if (onHide) {
@@ -1 +1 @@
1
- {"version":3,"file":"electron-context-menu-renderer.js","sourceRoot":"","sources":["../../../src/electron-browser/menu/electron-context-menu-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-context-menu-renderer.js","sourceRoot":"","sources":["../../../src/electron-browser/menu/electron-context-menu-renderer.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ export declare class ElectronMainMenuFactory extends BrowserMainMenuFactory {
45
45
  postConstruct(): void;
46
46
  setMenuBar(): Promise<void>;
47
47
  createElectronMenuBar(): MenuDto[] | undefined;
48
- createElectronContextMenu(menuPath: MenuPath, args?: any[], context?: HTMLElement, contextKeyService?: ContextMatcher): MenuDto[];
48
+ createElectronContextMenu(menuPath: MenuPath, args?: any[], context?: HTMLElement, contextKeyService?: ContextMatcher, skipSingleRootNode?: boolean): MenuDto[];
49
49
  protected fillMenuTemplate(parentItems: MenuDto[], menu: MenuNode, args: unknown[] | undefined, options: ElectronMenuOptions): MenuDto[];
50
50
  protected undefinedOrMatch(contextKeyService: ContextMatcher, expression?: string, context?: HTMLElement): boolean;
51
51
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-menu-factory.d.ts","sourceRoot":"","sources":["../../../src/electron-browser/menu/electron-main-menu-factory.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAwB,QAAQ,EAAE,QAAQ,EAA2D,MAAM,cAAc,CAAC;AACjI,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAkB,MAAM,eAAe,CAAC;AAGlE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC;;OAEG;IACH,YAAY,EAAE,QAAQ,CAAA;CACzB;AAED;;;GAGG;AACH,oBAAY,oBAAoB,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAC1E,oBAAoB,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,GACxE,gBAAgB,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,kBAAkB,GAC1E,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAClD,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GACtD,eAAe,GAAG,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAC/D,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,iBAAiB,GAAG,cAAc,GACzE,eAAe,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,sBAAsB,GAClF,oBAAoB,GAAG,YAAY,CAAC,CAAC;AAEzC,qBACa,uBAAwB,SAAQ,sBAAsB;IAE/D,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAGpD,SAAS,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;IAGhD,aAAa,IAAI,IAAI;IAsBf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC,qBAAqB,IAAI,OAAO,EAAE,GAAG,SAAS;IAgB9C,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,iBAAiB,CAAC,EAAE,cAAc,GAAG,OAAO,EAAE;IAKjI,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,EAAE,EAC7C,IAAI,EAAE,QAAQ,EACd,IAAI,uBAAgB,EACpB,OAAO,EAAE,mBAAmB,GAC7B,OAAO,EAAE;IA4EZ,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO;IAOlH;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;IAexD,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;cA2BnC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBpF,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAe/D,SAAS,CAAC,aAAa,IAAI,OAAO;CAoCrC"}
1
+ {"version":3,"file":"electron-main-menu-factory.d.ts","sourceRoot":"","sources":["../../../src/electron-browser/menu/electron-main-menu-factory.ts"],"names":[],"mappings":"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"}
@@ -76,8 +76,8 @@ let ElectronMainMenuFactory = class ElectronMainMenuFactory extends browser_menu
76
76
  // eslint-disable-next-line no-null/no-null
77
77
  return undefined;
78
78
  }
79
- createElectronContextMenu(menuPath, args, context, contextKeyService) {
80
- const menuModel = this.menuProvider.getMenu(menuPath);
79
+ createElectronContextMenu(menuPath, args, context, contextKeyService, skipSingleRootNode) {
80
+ const menuModel = skipSingleRootNode ? this.menuProvider.removeSingleRootNode(this.menuProvider.getMenu(menuPath), menuPath) : this.menuProvider.getMenu(menuPath);
81
81
  return this.fillMenuTemplate([], menuModel, args, { showDisabled: true, context, rootMenuPath: menuPath, contextKeyService });
82
82
  }
83
83
  fillMenuTemplate(parentItems, menu, args = [], options) {