@theia/core 1.62.0-next.3 → 1.62.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/README.md +7 -7
  2. package/i18n/nls.cs.json +158 -13
  3. package/i18n/nls.de.json +158 -13
  4. package/i18n/nls.es.json +158 -13
  5. package/i18n/nls.fr.json +158 -13
  6. package/i18n/nls.hu.json +158 -13
  7. package/i18n/nls.it.json +158 -13
  8. package/i18n/nls.ja.json +158 -13
  9. package/i18n/nls.json +159 -14
  10. package/i18n/nls.ko.json +158 -13
  11. package/i18n/nls.pl.json +158 -13
  12. package/i18n/nls.pt-br.json +158 -13
  13. package/i18n/nls.ru.json +158 -13
  14. package/i18n/nls.tr.json +158 -13
  15. package/i18n/nls.zh-cn.json +158 -13
  16. package/i18n/nls.zh-tw.json +158 -13
  17. package/lib/browser/catalog.json +206 -33
  18. package/lib/browser/common-frontend-contribution.d.ts +1 -1
  19. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  20. package/lib/browser/common-frontend-contribution.js +13 -11
  21. package/lib/browser/common-frontend-contribution.js.map +1 -1
  22. package/lib/browser/context-menu-renderer.d.ts +14 -3
  23. package/lib/browser/context-menu-renderer.d.ts.map +1 -1
  24. package/lib/browser/context-menu-renderer.js +23 -1
  25. package/lib/browser/context-menu-renderer.js.map +1 -1
  26. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  27. package/lib/browser/frontend-application-module.js +1 -3
  28. package/lib/browser/frontend-application-module.js.map +1 -1
  29. package/lib/browser/hover-service.d.ts.map +1 -1
  30. package/lib/browser/hover-service.js +7 -0
  31. package/lib/browser/hover-service.js.map +1 -1
  32. package/lib/browser/menu/action-menu-node.d.ts +36 -0
  33. package/lib/browser/menu/action-menu-node.d.ts.map +1 -0
  34. package/lib/browser/menu/action-menu-node.js +113 -0
  35. package/lib/browser/menu/action-menu-node.js.map +1 -0
  36. package/lib/browser/menu/browser-context-menu-renderer.d.ts +12 -4
  37. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  38. package/lib/browser/menu/browser-context-menu-renderer.js +12 -13
  39. package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
  40. package/lib/browser/menu/browser-menu-module.d.ts.map +1 -1
  41. package/lib/browser/menu/browser-menu-module.js +4 -0
  42. package/lib/browser/menu/browser-menu-module.js.map +1 -1
  43. package/lib/browser/menu/browser-menu-node-factory.d.ts +13 -0
  44. package/lib/browser/menu/browser-menu-node-factory.d.ts.map +1 -0
  45. package/lib/browser/menu/browser-menu-node-factory.js +54 -0
  46. package/lib/browser/menu/browser-menu-node-factory.js.map +1 -0
  47. package/lib/browser/menu/browser-menu-plugin.d.ts +12 -30
  48. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  49. package/lib/browser/menu/browser-menu-plugin.js +78 -159
  50. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  51. package/lib/browser/menu/composite-menu-node.d.ts +49 -0
  52. package/lib/browser/menu/composite-menu-node.d.ts.map +1 -0
  53. package/lib/browser/menu/composite-menu-node.js +127 -0
  54. package/lib/browser/menu/composite-menu-node.js.map +1 -0
  55. package/lib/browser/menu/menu.spec.d.ts.map +1 -0
  56. package/lib/{common → browser}/menu/menu.spec.js +38 -13
  57. package/lib/browser/menu/menu.spec.js.map +1 -0
  58. package/lib/browser/open-with-service.d.ts +1 -1
  59. package/lib/browser/saveable-service.d.ts.map +1 -1
  60. package/lib/browser/saveable-service.js +6 -1
  61. package/lib/browser/saveable-service.js.map +1 -1
  62. package/lib/browser/shell/application-shell.d.ts +7 -5
  63. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  64. package/lib/browser/shell/application-shell.js +82 -28
  65. package/lib/browser/shell/application-shell.js.map +1 -1
  66. package/lib/browser/shell/index.d.ts +1 -0
  67. package/lib/browser/shell/index.d.ts.map +1 -1
  68. package/lib/browser/shell/index.js +1 -0
  69. package/lib/browser/shell/index.js.map +1 -1
  70. package/lib/browser/shell/sidebar-bottom-menu-widget.d.ts.map +1 -1
  71. package/lib/browser/shell/sidebar-bottom-menu-widget.js +2 -1
  72. package/lib/browser/shell/sidebar-bottom-menu-widget.js.map +1 -1
  73. package/lib/browser/shell/sidebar-menu-widget.d.ts +4 -1
  74. package/lib/browser/shell/sidebar-menu-widget.d.ts.map +1 -1
  75. package/lib/browser/shell/sidebar-menu-widget.js +14 -1
  76. package/lib/browser/shell/sidebar-menu-widget.js.map +1 -1
  77. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.d.ts +66 -8
  78. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.d.ts.map +1 -1
  79. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js +161 -8
  80. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js.map +1 -1
  81. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts +18 -32
  82. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.d.ts.map +1 -1
  83. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js +52 -88
  84. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.js.map +1 -1
  85. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.d.ts +17 -21
  86. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.d.ts.map +1 -1
  87. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.js +9 -9
  88. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.js.map +1 -1
  89. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +7 -39
  90. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
  91. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +30 -238
  92. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
  93. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.js +13 -13
  94. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.js.map +1 -1
  95. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.d.ts +56 -0
  96. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.d.ts.map +1 -0
  97. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.js +208 -0
  98. package/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item.js.map +1 -0
  99. package/lib/browser/shell/tab-bars.d.ts.map +1 -1
  100. package/lib/browser/shell/tab-bars.js +2 -1
  101. package/lib/browser/shell/tab-bars.js.map +1 -1
  102. package/lib/browser/shell/theia-dock-panel.d.ts +4 -10
  103. package/lib/browser/shell/theia-dock-panel.d.ts.map +1 -1
  104. package/lib/browser/shell/theia-dock-panel.js +7 -84
  105. package/lib/browser/shell/theia-dock-panel.js.map +1 -1
  106. package/lib/browser/shell/theia-split-panel.d.ts +6 -0
  107. package/lib/browser/shell/theia-split-panel.d.ts.map +1 -0
  108. package/lib/browser/shell/theia-split-panel.js +56 -0
  109. package/lib/browser/shell/theia-split-panel.js.map +1 -0
  110. package/lib/browser/tree/tree-widget.d.ts +1 -0
  111. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  112. package/lib/browser/tree/tree-widget.js +6 -0
  113. package/lib/browser/tree/tree-widget.js.map +1 -1
  114. package/lib/browser/view-container.d.ts +6 -3
  115. package/lib/browser/view-container.d.ts.map +1 -1
  116. package/lib/browser/view-container.js +36 -26
  117. package/lib/browser/view-container.js.map +1 -1
  118. package/lib/browser/window/default-secondary-window-service.d.ts +1 -0
  119. package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
  120. package/lib/browser/window/default-secondary-window-service.js +3 -0
  121. package/lib/browser/window/default-secondary-window-service.js.map +1 -1
  122. package/lib/common/listener.d.ts +21 -0
  123. package/lib/common/listener.d.ts.map +1 -0
  124. package/lib/common/listener.js +81 -0
  125. package/lib/common/listener.js.map +1 -0
  126. package/lib/common/listener.spec.d.ts +2 -0
  127. package/lib/common/listener.spec.d.ts.map +1 -0
  128. package/lib/common/listener.spec.js +255 -0
  129. package/lib/common/listener.spec.js.map +1 -0
  130. package/lib/common/menu/index.d.ts +2 -3
  131. package/lib/common/menu/index.d.ts.map +1 -1
  132. package/lib/common/menu/index.js +2 -3
  133. package/lib/common/menu/index.js.map +1 -1
  134. package/lib/common/menu/menu-model-registry.d.ts +37 -50
  135. package/lib/common/menu/menu-model-registry.d.ts.map +1 -1
  136. package/lib/common/menu/menu-model-registry.js +176 -225
  137. package/lib/common/menu/menu-model-registry.js.map +1 -1
  138. package/lib/common/menu/menu-types.d.ts +58 -96
  139. package/lib/common/menu/menu-types.d.ts.map +1 -1
  140. package/lib/common/menu/menu-types.js +43 -39
  141. package/lib/common/menu/menu-types.js.map +1 -1
  142. package/lib/common/messaging/proxy-factory.d.ts.map +1 -1
  143. package/lib/common/messaging/proxy-factory.js +4 -0
  144. package/lib/common/messaging/proxy-factory.js.map +1 -1
  145. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts +15 -5
  146. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  147. package/lib/electron-browser/menu/electron-context-menu-renderer.js +21 -14
  148. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  149. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +4 -16
  150. package/lib/electron-browser/menu/electron-main-menu-factory.d.ts.map +1 -1
  151. package/lib/electron-browser/menu/electron-main-menu-factory.js +84 -104
  152. package/lib/electron-browser/menu/electron-main-menu-factory.js.map +1 -1
  153. package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
  154. package/lib/electron-browser/menu/electron-menu-contribution.js +1 -4
  155. package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
  156. package/lib/electron-browser/menu/electron-menu-module.d.ts.map +1 -1
  157. package/lib/electron-browser/menu/electron-menu-module.js +5 -0
  158. package/lib/electron-browser/menu/electron-menu-module.js.map +1 -1
  159. package/lib/electron-browser/window/electron-secondary-window-service.d.ts +1 -0
  160. package/lib/electron-browser/window/electron-secondary-window-service.d.ts.map +1 -1
  161. package/lib/electron-browser/window/electron-secondary-window-service.js +20 -0
  162. package/lib/electron-browser/window/electron-secondary-window-service.js.map +1 -1
  163. package/lib/electron-browser/window/electron-window-service.d.ts +3 -0
  164. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  165. package/lib/electron-browser/window/electron-window-service.js +10 -1
  166. package/lib/electron-browser/window/electron-window-service.js.map +1 -1
  167. package/lib/electron-main/theia-electron-window.d.ts.map +1 -1
  168. package/lib/electron-main/theia-electron-window.js +2 -0
  169. package/lib/electron-main/theia-electron-window.js.map +1 -1
  170. package/package.json +7 -8
  171. package/src/browser/common-frontend-contribution.ts +14 -14
  172. package/src/browser/context-menu-renderer.ts +33 -5
  173. package/src/browser/frontend-application-module.ts +1 -7
  174. package/src/browser/hover-service.ts +7 -0
  175. package/src/browser/menu/action-menu-node.ts +128 -0
  176. package/src/browser/menu/browser-context-menu-renderer.ts +18 -11
  177. package/src/browser/menu/browser-menu-module.ts +4 -0
  178. package/src/browser/menu/browser-menu-node-factory.ts +48 -0
  179. package/src/browser/menu/browser-menu-plugin.ts +80 -168
  180. package/src/browser/menu/composite-menu-node.ts +140 -0
  181. package/src/{common → browser}/menu/menu.spec.ts +47 -15
  182. package/src/browser/open-with-service.ts +1 -1
  183. package/src/browser/saveable-service.ts +6 -1
  184. package/src/browser/shell/application-shell.ts +91 -29
  185. package/src/browser/shell/index.ts +1 -0
  186. package/src/browser/shell/sidebar-bottom-menu-widget.tsx +2 -1
  187. package/src/browser/shell/sidebar-menu-widget.tsx +12 -2
  188. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.tsx +239 -0
  189. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.ts +59 -102
  190. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.ts +14 -23
  191. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.ts +14 -14
  192. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +34 -261
  193. package/src/browser/shell/tab-bar-toolbar/tab-toolbar-item.tsx +251 -0
  194. package/src/browser/shell/tab-bars.ts +2 -1
  195. package/src/browser/shell/theia-dock-panel.ts +10 -91
  196. package/src/browser/shell/theia-split-panel.ts +56 -0
  197. package/src/browser/style/hover-service.css +6 -1
  198. package/src/browser/style/index.css +3 -11
  199. package/src/browser/style/view-container.css +17 -31
  200. package/src/browser/tree/tree-widget.tsx +7 -0
  201. package/src/browser/view-container.ts +51 -30
  202. package/src/browser/window/default-secondary-window-service.ts +4 -0
  203. package/src/common/listener.spec.ts +315 -0
  204. package/src/common/listener.ts +88 -0
  205. package/src/common/menu/index.ts +2 -3
  206. package/src/common/menu/menu-model-registry.ts +187 -230
  207. package/src/common/menu/menu-types.ts +82 -128
  208. package/src/common/messaging/proxy-factory.ts +4 -1
  209. package/src/electron-browser/menu/electron-context-menu-renderer.ts +29 -13
  210. package/src/electron-browser/menu/electron-main-menu-factory.ts +92 -116
  211. package/src/electron-browser/menu/electron-menu-contribution.ts +1 -4
  212. package/src/electron-browser/menu/electron-menu-module.ts +6 -1
  213. package/src/electron-browser/window/electron-secondary-window-service.ts +22 -0
  214. package/src/electron-browser/window/electron-window-service.ts +11 -1
  215. package/src/electron-main/theia-electron-window.ts +2 -0
  216. package/lib/common/menu/action-menu-node.d.ts +0 -20
  217. package/lib/common/menu/action-menu-node.d.ts.map +0 -1
  218. package/lib/common/menu/action-menu-node.js +0 -57
  219. package/lib/common/menu/action-menu-node.js.map +0 -1
  220. package/lib/common/menu/composite-menu-node.d.ts +0 -47
  221. package/lib/common/menu/composite-menu-node.d.ts.map +0 -1
  222. package/lib/common/menu/composite-menu-node.js +0 -96
  223. package/lib/common/menu/composite-menu-node.js.map +0 -1
  224. package/lib/common/menu/composite-menu-node.spec.d.ts +0 -2
  225. package/lib/common/menu/composite-menu-node.spec.d.ts.map +0 -1
  226. package/lib/common/menu/composite-menu-node.spec.js +0 -68
  227. package/lib/common/menu/composite-menu-node.spec.js.map +0 -1
  228. package/lib/common/menu/menu-adapter.d.ts +0 -36
  229. package/lib/common/menu/menu-adapter.d.ts.map +0 -1
  230. package/lib/common/menu/menu-adapter.js +0 -93
  231. package/lib/common/menu/menu-adapter.js.map +0 -1
  232. package/lib/common/menu/menu.spec.d.ts.map +0 -1
  233. package/lib/common/menu/menu.spec.js.map +0 -1
  234. package/lib/common/test/mock-menu.d.ts +0 -8
  235. package/lib/common/test/mock-menu.d.ts.map +0 -1
  236. package/lib/common/test/mock-menu.js +0 -35
  237. package/lib/common/test/mock-menu.js.map +0 -1
  238. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.ts +0 -31
  239. package/src/common/menu/action-menu-node.ts +0 -65
  240. package/src/common/menu/composite-menu-node.spec.ts +0 -67
  241. package/src/common/menu/composite-menu-node.ts +0 -116
  242. package/src/common/menu/menu-adapter.ts +0 -103
  243. package/src/common/test/mock-menu.ts +0 -35
  244. /package/lib/{common → browser}/menu/menu.spec.d.ts +0 -0
@@ -1,6 +1,5 @@
1
1
  import { MenuBar, Menu as MenuWidget, Widget } from '@lumino/widgets';
2
2
  import { CommandRegistry as LuminoCommandRegistry } from '@lumino/commands';
3
- import { CommandRegistry, DisposableCollection, Disposable, MenuModelRegistry, MenuPath, MenuNode, MenuCommandExecutor, CompoundMenuNode, CommandMenuNode } from '../../common';
4
3
  import { KeybindingRegistry } from '../keybinding';
5
4
  import { FrontendApplication } from '../frontend-application';
6
5
  import { FrontendApplicationContribution } from '../frontend-application-contribution';
@@ -10,21 +9,18 @@ import { Message } from '../widgets';
10
9
  import { ApplicationShell } from '../shell';
11
10
  import { CorePreferences } from '../core-preferences';
12
11
  import { PreferenceService } from '../preferences/preference-service';
12
+ import { CompoundMenuNode, MenuNode, MenuPath, Submenu } from '../../common/menu/menu-types';
13
+ import { MenuModelRegistry } from '../../common/menu/menu-model-registry';
13
14
  export declare abstract class MenuBarWidget extends MenuBar {
14
15
  abstract activateMenu(label: string, ...labels: string[]): Promise<MenuWidget>;
15
16
  abstract triggerMenuItem(label: string, ...labels: string[]): Promise<MenuWidget.IItem>;
16
17
  }
17
18
  export interface BrowserMenuOptions extends MenuWidget.IOptions {
18
- commands: MenuCommandRegistry;
19
19
  context?: HTMLElement;
20
- contextKeyService?: ContextMatcher;
21
- rootMenuPath: MenuPath;
22
20
  }
23
21
  export declare class BrowserMainMenuFactory implements MenuWidgetFactory {
24
22
  protected readonly contextKeyService: ContextKeyService;
25
23
  protected readonly context: ContextMenuContext;
26
- protected readonly commandRegistry: CommandRegistry;
27
- protected readonly menuCommandExecutor: MenuCommandExecutor;
28
24
  protected readonly corePreferences: CorePreferences;
29
25
  protected readonly keybindingRegistry: KeybindingRegistry;
30
26
  protected readonly menuProvider: MenuModelRegistry;
@@ -32,10 +28,8 @@ export declare class BrowserMainMenuFactory implements MenuWidgetFactory {
32
28
  protected getMenuBarVisibility(): string;
33
29
  protected showMenuBar(menuBar: DynamicMenuBarWidget, preference?: string): void;
34
30
  protected fillMenuBar(menuBar: MenuBarWidget): void;
35
- createContextMenu(path: MenuPath, args?: unknown[], context?: HTMLElement, contextKeyService?: ContextMatcher, skipSingleRootNode?: boolean): MenuWidget;
36
- createMenuWidget(menu: CompoundMenuNode, options: BrowserMenuOptions): DynamicMenuWidget;
37
- protected createMenuCommandRegistry(menu: CompoundMenuNode, args?: unknown[]): MenuCommandRegistry;
38
- protected registerMenu(menuCommandRegistry: MenuCommandRegistry, menu: MenuNode, args: unknown[]): void;
31
+ createContextMenu(effectiveMenuPath: MenuPath, menuModel: CompoundMenuNode, contextMatcher: ContextMatcher, args?: unknown[], context?: HTMLElement): MenuWidget;
32
+ createMenuWidget(parentPath: MenuPath, menu: CompoundMenuNode, contextMatcher: ContextMatcher, options: BrowserMenuOptions, args?: unknown[]): DynamicMenuWidget;
39
33
  protected get services(): MenuServices;
40
34
  }
41
35
  export declare function isMenuElement(element: HTMLElement | null): boolean;
@@ -49,28 +43,29 @@ export declare class DynamicMenuBarWidget extends MenuBarWidget {
49
43
  triggerMenuItem(label: string, ...labels: string[]): Promise<MenuWidget.IItem>;
50
44
  }
51
45
  export declare class MenuServices {
52
- readonly commandRegistry: CommandRegistry;
53
- readonly keybindingRegistry: KeybindingRegistry;
54
46
  readonly contextKeyService: ContextKeyService;
55
47
  readonly context: ContextMenuContext;
56
48
  readonly menuWidgetFactory: MenuWidgetFactory;
57
- readonly commandExecutor: MenuCommandExecutor;
58
49
  }
59
50
  export interface MenuWidgetFactory {
60
- createMenuWidget(menu: MenuNode & Required<Pick<MenuNode, 'children'>>, options: BrowserMenuOptions): MenuWidget;
51
+ createMenuWidget(effectiveMenuPath: MenuPath, menu: Submenu, contextMatcher: ContextMatcher, options: BrowserMenuOptions): MenuWidget;
61
52
  }
62
53
  /**
63
54
  * A menu widget that would recompute its items on update.
64
55
  */
65
56
  export declare class DynamicMenuWidget extends MenuWidget {
57
+ protected readonly effectiveMenuPath: MenuPath;
66
58
  protected menu: CompoundMenuNode;
67
59
  protected options: BrowserMenuOptions;
60
+ protected contextMatcher: ContextMatcher;
68
61
  protected services: MenuServices;
62
+ protected args?: unknown[] | undefined;
63
+ private static nextCommmandId;
69
64
  /**
70
65
  * We want to restore the focus after the menu closes.
71
66
  */
72
67
  protected previousFocusedElement: HTMLElement | undefined;
73
- constructor(menu: CompoundMenuNode, options: BrowserMenuOptions, services: MenuServices);
68
+ constructor(effectiveMenuPath: MenuPath, menu: CompoundMenuNode, options: BrowserMenuOptions, contextMatcher: ContextMatcher, services: MenuServices, args?: unknown[] | undefined);
74
69
  protected onAfterAttach(msg: Message): void;
75
70
  protected onBeforeDetach(msg: Message): void;
76
71
  handleEvent(event: Event): void;
@@ -80,9 +75,8 @@ export declare class DynamicMenuWidget extends MenuWidget {
80
75
  previousFocusedElement: HTMLElement | undefined;
81
76
  }): void;
82
77
  open(x: number, y: number, options?: MenuWidget.IOpenOptions): void;
83
- protected updateSubMenus(parent: MenuWidget, menu: CompoundMenuNode, commands: MenuCommandRegistry): void;
84
- protected buildSubMenus(parentItems: MenuWidget.IItemOptions[], menu: MenuNode, commands: MenuCommandRegistry): MenuWidget.IItemOptions[];
85
- protected undefinedOrMatch(contextKeyService: ContextMatcher, expression?: string, context?: HTMLElement): boolean;
78
+ protected updateSubMenus(parentPath: MenuPath, parent: MenuWidget, menu: CompoundMenuNode, commands: LuminoCommandRegistry, contextMatcher: ContextMatcher, context?: HTMLElement | undefined): void;
79
+ protected createItems(parentPath: MenuPath, nodes: MenuNode[], phCommandRegistry: LuminoCommandRegistry, contextMatcher: ContextMatcher, context?: HTMLElement): MenuWidget.IItemOptions[];
86
80
  protected preserveFocusedElement(previousFocusedElement?: Element | null): boolean;
87
81
  protected restoreFocusedElement(): boolean;
88
82
  protected runWithPreservedFocusContext(what: () => void): void;
@@ -97,16 +91,4 @@ export declare class BrowserMenuBarContribution implements FrontendApplicationCo
97
91
  protected appendMenu(shell: ApplicationShell): void;
98
92
  protected createLogo(): Widget;
99
93
  }
100
- /**
101
- * Stores Theia-specific action menu nodes instead of Lumino commands with their handlers.
102
- */
103
- export declare class MenuCommandRegistry extends LuminoCommandRegistry {
104
- protected services: MenuServices;
105
- protected actions: Map<string, [import("../../common").MenuNodeMetadata & import("../../common").MenuNodeRenderingData & Partial<CompoundMenuNode> & Partial<CommandMenuNode> & Partial<import("../../common").AlternativeHandlerMenuNode> & CommandMenuNode, unknown[]]>;
106
- protected toDispose: DisposableCollection;
107
- constructor(services: MenuServices);
108
- registerActionMenu(menu: MenuNode & CommandMenuNode, args: unknown[]): void;
109
- snapshot(menuPath: MenuPath): this;
110
- protected registerCommand(menu: MenuNode & CommandMenuNode, args: unknown[], menuPath: MenuPath): Disposable;
111
- }
112
94
  //# sourceMappingURL=browser-menu-plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-menu-plugin.d.ts","sourceRoot":"","sources":["../../../src/browser/menu/browser-menu-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-menu-plugin.d.ts","sourceRoot":"","sources":["../../../src/browser/menu/browser-menu-plugin.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.MenuCommandRegistry = exports.BrowserMenuBarContribution = exports.DynamicMenuWidget = exports.MenuServices = exports.DynamicMenuBarWidget = exports.isMenuElement = exports.BrowserMainMenuFactory = exports.MenuBarWidget = void 0;
18
+ exports.BrowserMenuBarContribution = exports.DynamicMenuWidget = exports.MenuServices = exports.DynamicMenuBarWidget = exports.isMenuElement = exports.BrowserMainMenuFactory = exports.MenuBarWidget = void 0;
19
19
  const tslib_1 = require("tslib");
20
20
  const inversify_1 = require("inversify");
21
21
  const widgets_1 = require("@lumino/widgets");
@@ -29,6 +29,8 @@ const shell_1 = require("../shell");
29
29
  const core_preferences_1 = require("../core-preferences");
30
30
  const preference_service_1 = require("../preferences/preference-service");
31
31
  const domutils_1 = require("@lumino/domutils");
32
+ const menu_types_1 = require("../../common/menu/menu-types");
33
+ const menu_model_registry_1 = require("../../common/menu/menu-model-registry");
32
34
  class MenuBarWidget extends widgets_1.MenuBar {
33
35
  }
34
36
  exports.MenuBarWidget = MenuBarWidget;
@@ -47,7 +49,7 @@ let BrowserMainMenuFactory = class BrowserMainMenuFactory {
47
49
  }), this.keybindingRegistry.onKeybindingsChanged(() => {
48
50
  this.showMenuBar(menuBar);
49
51
  }), this.menuProvider.onDidChange(evt => {
50
- if (common_1.ArrayUtils.startsWith(evt.path, common_1.MAIN_MENU_BAR)) {
52
+ if (common_1.ArrayUtils.startsWith(evt.path, menu_types_1.MAIN_MENU_BAR)) {
51
53
  this.showMenuBar(menuBar);
52
54
  }
53
55
  }));
@@ -67,48 +69,28 @@ let BrowserMainMenuFactory = class BrowserMainMenuFactory {
67
69
  }
68
70
  }
69
71
  fillMenuBar(menuBar) {
70
- const menuModel = this.menuProvider.getMenu(common_1.MAIN_MENU_BAR);
71
- const menuCommandRegistry = this.createMenuCommandRegistry(menuModel);
72
+ const menuModel = this.menuProvider.getMenuNode(menu_types_1.MAIN_MENU_BAR);
73
+ const menuCommandRegistry = new commands_1.CommandRegistry();
72
74
  for (const menu of menuModel.children) {
73
- if (common_1.CompoundMenuNode.is(menu)) {
74
- const menuWidget = this.createMenuWidget(menu, { commands: menuCommandRegistry, rootMenuPath: common_1.MAIN_MENU_BAR });
75
+ if (menu_types_1.CompoundMenuNode.is(menu) && menu_types_1.RenderedMenuNode.is(menu)) {
76
+ const menuWidget = this.createMenuWidget(menu_types_1.MAIN_MENU_BAR, menu, this.contextKeyService, { commands: menuCommandRegistry });
75
77
  menuBar.addMenu(menuWidget);
76
78
  }
77
79
  }
78
80
  }
79
- createContextMenu(path, args, context, contextKeyService, skipSingleRootNode) {
80
- const menuModel = skipSingleRootNode ? this.menuProvider.removeSingleRootNode(this.menuProvider.getMenu(path), path) : this.menuProvider.getMenu(path);
81
- const menuCommandRegistry = this.createMenuCommandRegistry(menuModel, args).snapshot(path);
82
- const contextMenu = this.createMenuWidget(menuModel, { commands: menuCommandRegistry, context, rootMenuPath: path, contextKeyService });
81
+ createContextMenu(effectiveMenuPath, menuModel, contextMatcher, args, context) {
82
+ const menuCommandRegistry = new commands_1.CommandRegistry();
83
+ const contextMenu = this.createMenuWidget(effectiveMenuPath, menuModel, contextMatcher, { commands: menuCommandRegistry, context }, args);
83
84
  return contextMenu;
84
85
  }
85
- createMenuWidget(menu, options) {
86
- return new DynamicMenuWidget(menu, options, this.services);
87
- }
88
- createMenuCommandRegistry(menu, args = []) {
89
- const menuCommandRegistry = new MenuCommandRegistry(this.services);
90
- this.registerMenu(menuCommandRegistry, menu, args);
91
- return menuCommandRegistry;
92
- }
93
- registerMenu(menuCommandRegistry, menu, args) {
94
- if (common_1.CompoundMenuNode.is(menu)) {
95
- menu.children.forEach(child => this.registerMenu(menuCommandRegistry, child, args));
96
- }
97
- else if (common_1.CommandMenuNode.is(menu)) {
98
- menuCommandRegistry.registerActionMenu(menu, args);
99
- if (common_1.CommandMenuNode.hasAltHandler(menu)) {
100
- menuCommandRegistry.registerActionMenu(menu.altNode, args);
101
- }
102
- }
86
+ createMenuWidget(parentPath, menu, contextMatcher, options, args) {
87
+ return new DynamicMenuWidget(parentPath, menu, options, contextMatcher, this.services, args);
103
88
  }
104
89
  get services() {
105
90
  return {
106
- context: this.context,
107
91
  contextKeyService: this.contextKeyService,
108
- commandRegistry: this.commandRegistry,
109
- keybindingRegistry: this.keybindingRegistry,
92
+ context: this.context,
110
93
  menuWidgetFactory: this,
111
- commandExecutor: this.menuCommandExecutor,
112
94
  };
113
95
  }
114
96
  };
@@ -121,14 +103,6 @@ tslib_1.__decorate([
121
103
  (0, inversify_1.inject)(context_menu_context_1.ContextMenuContext),
122
104
  tslib_1.__metadata("design:type", context_menu_context_1.ContextMenuContext)
123
105
  ], BrowserMainMenuFactory.prototype, "context", void 0);
124
- tslib_1.__decorate([
125
- (0, inversify_1.inject)(common_1.CommandRegistry),
126
- tslib_1.__metadata("design:type", common_1.CommandRegistry)
127
- ], BrowserMainMenuFactory.prototype, "commandRegistry", void 0);
128
- tslib_1.__decorate([
129
- (0, inversify_1.inject)(common_1.MenuCommandExecutor),
130
- tslib_1.__metadata("design:type", Object)
131
- ], BrowserMainMenuFactory.prototype, "menuCommandExecutor", void 0);
132
106
  tslib_1.__decorate([
133
107
  (0, inversify_1.inject)(core_preferences_1.CorePreferences),
134
108
  tslib_1.__metadata("design:type", Object)
@@ -138,8 +112,8 @@ tslib_1.__decorate([
138
112
  tslib_1.__metadata("design:type", keybinding_1.KeybindingRegistry)
139
113
  ], BrowserMainMenuFactory.prototype, "keybindingRegistry", void 0);
140
114
  tslib_1.__decorate([
141
- (0, inversify_1.inject)(common_1.MenuModelRegistry),
142
- tslib_1.__metadata("design:type", common_1.MenuModelRegistry)
115
+ (0, inversify_1.inject)(menu_model_registry_1.MenuModelRegistry),
116
+ tslib_1.__metadata("design:type", menu_model_registry_1.MenuModelRegistry)
143
117
  ], BrowserMainMenuFactory.prototype, "menuProvider", void 0);
144
118
  exports.BrowserMainMenuFactory = BrowserMainMenuFactory = tslib_1.__decorate([
145
119
  (0, inversify_1.injectable)()
@@ -214,18 +188,23 @@ exports.MenuServices = MenuServices;
214
188
  * A menu widget that would recompute its items on update.
215
189
  */
216
190
  class DynamicMenuWidget extends widgets_1.Menu {
217
- constructor(menu, options, services) {
191
+ constructor(effectiveMenuPath, menu, options, contextMatcher, services, args) {
218
192
  super(options);
193
+ this.effectiveMenuPath = effectiveMenuPath;
219
194
  this.menu = menu;
220
195
  this.options = options;
196
+ this.contextMatcher = contextMatcher;
221
197
  this.services = services;
222
- if (menu.label) {
223
- this.title.label = menu.label;
224
- }
225
- if (menu.icon) {
226
- this.title.iconClass = menu.icon;
198
+ this.args = args;
199
+ if (menu_types_1.RenderedMenuNode.is(this.menu)) {
200
+ if (this.menu.label) {
201
+ this.title.label = this.menu.label;
202
+ }
203
+ if (this.menu.icon) {
204
+ this.title.iconClass = this.menu.icon;
205
+ }
227
206
  }
228
- this.updateSubMenus(this, this.menu, this.options.commands);
207
+ this.updateSubMenus(this.effectiveMenuPath, this, this.menu, this.options.commands, this.contextMatcher, this.options.context);
229
208
  }
230
209
  onAfterAttach(msg) {
231
210
  super.onAfterAttach(msg);
@@ -267,8 +246,7 @@ class DynamicMenuWidget extends widgets_1.Menu {
267
246
  this.preserveFocusedElement(previousFocusedElement);
268
247
  this.clearItems();
269
248
  this.runWithPreservedFocusContext(() => {
270
- this.options.commands.snapshot(this.options.rootMenuPath);
271
- this.updateSubMenus(this, this.menu, this.options.commands);
249
+ this.updateSubMenus(this.effectiveMenuPath, this, this.menu, this.options.commands, this.contextMatcher, this.options.context);
272
250
  });
273
251
  }
274
252
  open(x, y, options) {
@@ -280,9 +258,9 @@ class DynamicMenuWidget extends widgets_1.Menu {
280
258
  this.preserveFocusedElement();
281
259
  super.open(x, y, options);
282
260
  }
283
- updateSubMenus(parent, menu, commands) {
261
+ updateSubMenus(parentPath, parent, menu, commands, contextMatcher, context) {
284
262
  var _a;
285
- const items = this.buildSubMenus([], menu, commands);
263
+ const items = this.createItems(parentPath, menu.children, commands, contextMatcher, context);
286
264
  while (((_a = items[items.length - 1]) === null || _a === void 0 ? void 0 : _a.type) === 'separator') {
287
265
  items.pop();
288
266
  }
@@ -297,47 +275,57 @@ class DynamicMenuWidget extends widgets_1.Menu {
297
275
  parent.addItem(item);
298
276
  }
299
277
  }
300
- buildSubMenus(parentItems, menu, commands) {
301
- var _a, _b;
302
- if (common_1.CompoundMenuNode.is(menu)
303
- && menu.children.length
304
- && this.undefinedOrMatch((_a = this.options.contextKeyService) !== null && _a !== void 0 ? _a : this.services.contextKeyService, menu.when, this.options.context)) {
305
- const role = menu === this.menu ? 1 /* CompoundMenuNodeRole.Group */ : common_1.CompoundMenuNode.getRole(menu);
306
- if (role === 0 /* CompoundMenuNodeRole.Submenu */) {
307
- const submenu = this.services.menuWidgetFactory.createMenuWidget(menu, this.options);
308
- if (submenu.items.length > 0) {
309
- parentItems.push({ type: 'submenu', submenu });
278
+ createItems(parentPath, nodes, phCommandRegistry, contextMatcher, context) {
279
+ const result = [];
280
+ for (const node of nodes) {
281
+ const nodePath = [...parentPath, node.id];
282
+ if (node.isVisible(nodePath, contextMatcher, context, ...(this.args || []))) {
283
+ if (menu_types_1.CompoundMenuNode.is(node)) {
284
+ if (menu_types_1.RenderedMenuNode.is(node)) {
285
+ const submenu = this.services.menuWidgetFactory.createMenuWidget(nodePath, node, this.contextMatcher, this.options);
286
+ if (submenu.items.length > 0) {
287
+ result.push({ type: 'submenu', submenu });
288
+ }
289
+ }
290
+ else {
291
+ const items = this.createItems(nodePath, node.children, phCommandRegistry, contextMatcher, context);
292
+ if (items.length > 0) {
293
+ if (node.id !== 'inline') {
294
+ result.push({ type: 'separator' });
295
+ }
296
+ result.push(...items);
297
+ if (node.id !== 'inline') {
298
+ result.push({ type: 'separator' });
299
+ }
300
+ }
301
+ }
310
302
  }
311
- }
312
- else if (role === 1 /* CompoundMenuNodeRole.Group */ && menu.id !== 'inline') {
313
- const children = common_1.CompoundMenuNode.getFlatChildren(menu.children);
314
- const myItems = [];
315
- children.forEach(child => this.buildSubMenus(myItems, child, commands));
316
- if (myItems.length) {
317
- if (parentItems.length && parentItems[parentItems.length - 1].type !== 'separator') {
318
- parentItems.push({ type: 'separator' });
303
+ else if (menu_types_1.CommandMenu.is(node)) {
304
+ const id = !phCommandRegistry.hasCommand(node.id) ? node.id : `${node.id}:${DynamicMenuWidget.nextCommmandId++}`;
305
+ phCommandRegistry.addCommand(id, {
306
+ execute: () => { node.run(nodePath, ...(this.args || [])); },
307
+ isEnabled: () => node.isEnabled(nodePath, ...(this.args || [])),
308
+ isToggled: () => node.isToggled ? !!node.isToggled(nodePath, ...(this.args || [])) : false,
309
+ isVisible: () => true,
310
+ label: node.label,
311
+ iconClass: node.icon,
312
+ });
313
+ const accelerator = (common_1.AcceleratorSource.is(node) ? node.getAccelerator(this.options.context) : []);
314
+ if (accelerator.length > 0) {
315
+ phCommandRegistry.addKeyBinding({
316
+ command: id,
317
+ keys: accelerator,
318
+ selector: '.p-Widget' // We have the PhosphorJS dependency anyway.
319
+ });
319
320
  }
320
- parentItems.push(...myItems);
321
- parentItems.push({ type: 'separator' });
321
+ result.push({
322
+ command: id,
323
+ type: 'command'
324
+ });
322
325
  }
323
326
  }
324
327
  }
325
- else if (menu.command) {
326
- const node = menu.altNode && this.services.context.altPressed ? menu.altNode : menu;
327
- if (commands.isVisible(node.command) && this.undefinedOrMatch((_b = this.options.contextKeyService) !== null && _b !== void 0 ? _b : this.services.contextKeyService, node.when, this.options.context)) {
328
- parentItems.push({
329
- command: node.command,
330
- type: 'command'
331
- });
332
- }
333
- }
334
- return parentItems;
335
- }
336
- undefinedOrMatch(contextKeyService, expression, context) {
337
- if (expression) {
338
- return contextKeyService.match(expression, context);
339
- }
340
- return true;
328
+ return result;
341
329
  }
342
330
  preserveFocusedElement(previousFocusedElement = document.activeElement) {
343
331
  if (!this.previousFocusedElement && previousFocusedElement instanceof HTMLElement && !isMenuElement(previousFocusedElement)) {
@@ -374,6 +362,7 @@ class DynamicMenuWidget extends widgets_1.Menu {
374
362
  }
375
363
  }
376
364
  exports.DynamicMenuWidget = DynamicMenuWidget;
365
+ DynamicMenuWidget.nextCommmandId = 0;
377
366
  let BrowserMenuBarContribution = class BrowserMenuBarContribution {
378
367
  constructor(factory) {
379
368
  this.factory = factory;
@@ -423,74 +412,4 @@ exports.BrowserMenuBarContribution = BrowserMenuBarContribution = tslib_1.__deco
423
412
  tslib_1.__param(0, (0, inversify_1.inject)(BrowserMainMenuFactory)),
424
413
  tslib_1.__metadata("design:paramtypes", [BrowserMainMenuFactory])
425
414
  ], BrowserMenuBarContribution);
426
- /**
427
- * Stores Theia-specific action menu nodes instead of Lumino commands with their handlers.
428
- */
429
- class MenuCommandRegistry extends commands_1.CommandRegistry {
430
- constructor(services) {
431
- super();
432
- this.services = services;
433
- this.actions = new Map();
434
- this.toDispose = new common_1.DisposableCollection();
435
- }
436
- registerActionMenu(menu, args) {
437
- const { commandRegistry } = this.services;
438
- const command = commandRegistry.getCommand(menu.command);
439
- if (!command) {
440
- return;
441
- }
442
- const { id } = command;
443
- if (this.actions.has(id)) {
444
- return;
445
- }
446
- this.actions.set(id, [menu, args]);
447
- }
448
- snapshot(menuPath) {
449
- this.toDispose.dispose();
450
- for (const [menu, args] of this.actions.values()) {
451
- this.toDispose.push(this.registerCommand(menu, args, menuPath));
452
- }
453
- return this;
454
- }
455
- registerCommand(menu, args, menuPath) {
456
- var _a;
457
- const { commandRegistry, keybindingRegistry, commandExecutor } = this.services;
458
- const command = commandRegistry.getCommand(menu.command);
459
- if (!command) {
460
- return common_1.Disposable.NULL;
461
- }
462
- const { id } = command;
463
- if (this.hasCommand(id)) {
464
- // several menu items can be registered for the same command in different contexts
465
- return common_1.Disposable.NULL;
466
- }
467
- // We freeze the `isEnabled`, `isVisible`, and `isToggled` states so they won't change.
468
- const enabled = commandExecutor.isEnabled(menuPath, id, ...args);
469
- const visible = commandExecutor.isVisible(menuPath, id, ...args);
470
- const toggled = commandExecutor.isToggled(menuPath, id, ...args);
471
- const unregisterCommand = this.addCommand(id, {
472
- execute: () => commandExecutor.executeCommand(menuPath, id, ...args),
473
- label: menu.label,
474
- iconClass: menu.icon,
475
- isEnabled: () => enabled,
476
- isVisible: () => visible,
477
- isToggled: () => toggled
478
- });
479
- const bindings = keybindingRegistry.getKeybindingsForCommand(id);
480
- // Only consider the first active keybinding.
481
- if (bindings.length) {
482
- const binding = bindings.length > 1 ?
483
- (_a = bindings.find(b => !b.when || this.services.contextKeyService.match(b.when))) !== null && _a !== void 0 ? _a : bindings[0] :
484
- bindings[0];
485
- const keys = keybindingRegistry.acceleratorFor(binding, ' ', true);
486
- this.addKeyBinding({
487
- command: id,
488
- keys,
489
- selector: '.lm-Widget' // We have the Lumino dependency anyway.
490
- });
491
- }
492
- return common_1.Disposable.create(() => unregisterCommand.dispose());
493
- }
494
- }
495
- exports.MenuCommandRegistry = MenuCommandRegistry;
496
415
  //# sourceMappingURL=browser-menu-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-menu-plugin.js","sourceRoot":"","sources":["../../../src/browser/menu/browser-menu-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-menu-plugin.js","sourceRoot":"","sources":["../../../src/browser/menu/browser-menu-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { CompoundMenuNode, ContextExpressionMatcher, Group, MenuNode, MenuPath, Submenu } from '../../common/menu/menu-types';
2
+ import { Event } from '../../common';
3
+ export declare class SubMenuLink implements CompoundMenuNode {
4
+ private readonly delegate;
5
+ private readonly _sortString?;
6
+ private readonly _when?;
7
+ constructor(delegate: Submenu, _sortString?: string | undefined, _when?: string | undefined);
8
+ get id(): string;
9
+ get onDidChange(): Event<void> | undefined;
10
+ get children(): MenuNode[];
11
+ get contextKeyOverlays(): Record<string, string> | undefined;
12
+ get label(): string;
13
+ get icon(): string | undefined;
14
+ get sortString(): string;
15
+ isVisible<T>(effectiveMenuPath: MenuPath, contextMatcher: ContextExpressionMatcher<T>, context: T | undefined, ...args: unknown[]): boolean;
16
+ isEmpty<T>(effectiveMenuPath: MenuPath, contextMatcher: ContextExpressionMatcher<T>, context: T | undefined, ...args: unknown[]): boolean;
17
+ }
18
+ /**
19
+ * Node representing a (sub)menu in the menu tree structure.
20
+ */
21
+ export declare abstract class AbstractCompoundMenuImpl implements MenuNode {
22
+ readonly id: string;
23
+ protected readonly orderString?: string | undefined;
24
+ protected readonly when?: string | undefined;
25
+ readonly children: MenuNode[];
26
+ protected constructor(id: string, orderString?: string | undefined, when?: string | undefined);
27
+ getOrCreate(menuPath: MenuPath, pathIndex: number, endIndex: number): CompoundMenuImpl;
28
+ /**
29
+ * Menu nodes are sorted in ascending order based on their `sortString`.
30
+ */
31
+ isVisible<T>(effectiveMenuPath: MenuPath, contextMatcher: ContextExpressionMatcher<T>, context: T | undefined, ...args: unknown[]): boolean;
32
+ isEmpty<T>(effectiveMenuPath: MenuPath, contextMatcher: ContextExpressionMatcher<T>, context: T | undefined, ...args: unknown[]): boolean;
33
+ addNode(...node: MenuNode[]): void;
34
+ getNode(id: string): MenuNode | undefined;
35
+ removeById(id: string): void;
36
+ removeNode(node: MenuNode): void;
37
+ get sortString(): string;
38
+ }
39
+ export declare class GroupImpl extends AbstractCompoundMenuImpl implements Group {
40
+ constructor(id: string, orderString?: string, when?: string);
41
+ }
42
+ export declare class SubmenuImpl extends AbstractCompoundMenuImpl implements Submenu {
43
+ readonly label: string;
44
+ readonly contextKeyOverlays: Record<string, string> | undefined;
45
+ readonly icon?: string | undefined;
46
+ constructor(id: string, label: string, contextKeyOverlays: Record<string, string> | undefined, orderString?: string, icon?: string | undefined, when?: string);
47
+ }
48
+ export type CompoundMenuImpl = SubmenuImpl | GroupImpl;
49
+ //# sourceMappingURL=composite-menu-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composite-menu-node.d.ts","sourceRoot":"","sources":["../../../src/browser/menu/composite-menu-node.ts"],"names":[],"mappings":"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"}