@theia/plugin-ext 1.61.0 → 1.62.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 (85) hide show
  1. package/lib/common/plugin-api-rpc-model.d.ts +2 -2
  2. package/lib/common/plugin-api-rpc-model.d.ts.map +1 -1
  3. package/lib/common/plugin-api-rpc.d.ts +3 -2
  4. package/lib/common/plugin-api-rpc.d.ts.map +1 -1
  5. package/lib/common/plugin-api-rpc.js.map +1 -1
  6. package/lib/main/browser/comments/comment-thread-widget.d.ts +64 -15
  7. package/lib/main/browser/comments/comment-thread-widget.d.ts.map +1 -1
  8. package/lib/main/browser/comments/comment-thread-widget.js +93 -49
  9. package/lib/main/browser/comments/comment-thread-widget.js.map +1 -1
  10. package/lib/main/browser/comments/{comments-context-key-service.d.ts → comments-context.d.ts} +2 -7
  11. package/lib/main/browser/comments/comments-context.d.ts.map +1 -0
  12. package/lib/main/browser/comments/{comments-context-key-service.js → comments-context.js} +8 -25
  13. package/lib/main/browser/comments/comments-context.js.map +1 -0
  14. package/lib/main/browser/comments/comments-contribution.d.ts +2 -2
  15. package/lib/main/browser/comments/comments-contribution.d.ts.map +1 -1
  16. package/lib/main/browser/comments/comments-contribution.js +8 -8
  17. package/lib/main/browser/comments/comments-contribution.js.map +1 -1
  18. package/lib/main/browser/comments/comments-main.d.ts +28 -3
  19. package/lib/main/browser/comments/comments-main.d.ts.map +1 -1
  20. package/lib/main/browser/comments/comments-main.js.map +1 -1
  21. package/lib/main/browser/custom-editors/custom-editor-opener.d.ts.map +1 -1
  22. package/lib/main/browser/custom-editors/custom-editor-opener.js +6 -1
  23. package/lib/main/browser/custom-editors/custom-editor-opener.js.map +1 -1
  24. package/lib/main/browser/documents-main.d.ts +2 -1
  25. package/lib/main/browser/documents-main.d.ts.map +1 -1
  26. package/lib/main/browser/documents-main.js +13 -9
  27. package/lib/main/browser/documents-main.js.map +1 -1
  28. package/lib/main/browser/main-context.d.ts.map +1 -1
  29. package/lib/main/browser/main-context.js +3 -1
  30. package/lib/main/browser/main-context.js.map +1 -1
  31. package/lib/main/browser/menus/menus-contribution-handler.d.ts +7 -13
  32. package/lib/main/browser/menus/menus-contribution-handler.d.ts.map +1 -1
  33. package/lib/main/browser/menus/menus-contribution-handler.js +64 -51
  34. package/lib/main/browser/menus/menus-contribution-handler.js.map +1 -1
  35. package/lib/main/browser/menus/plugin-menu-command-adapter.d.ts +5 -30
  36. package/lib/main/browser/menus/plugin-menu-command-adapter.d.ts.map +1 -1
  37. package/lib/main/browser/menus/plugin-menu-command-adapter.js +7 -110
  38. package/lib/main/browser/menus/plugin-menu-command-adapter.js.map +1 -1
  39. package/lib/main/browser/menus/vscode-theia-menu-mappings.d.ts +4 -4
  40. package/lib/main/browser/menus/vscode-theia-menu-mappings.d.ts.map +1 -1
  41. package/lib/main/browser/menus/vscode-theia-menu-mappings.js +7 -10
  42. package/lib/main/browser/menus/vscode-theia-menu-mappings.js.map +1 -1
  43. package/lib/main/browser/plugin-ext-frontend-module.d.ts.map +1 -1
  44. package/lib/main/browser/plugin-ext-frontend-module.js +2 -4
  45. package/lib/main/browser/plugin-ext-frontend-module.js.map +1 -1
  46. package/lib/main/browser/terminal-main.d.ts.map +1 -1
  47. package/lib/main/browser/terminal-main.js +4 -1
  48. package/lib/main/browser/terminal-main.js.map +1 -1
  49. package/lib/main/browser/text-editor-model-service.d.ts +1 -3
  50. package/lib/main/browser/text-editor-model-service.d.ts.map +1 -1
  51. package/lib/main/browser/text-editor-model-service.js +0 -5
  52. package/lib/main/browser/text-editor-model-service.js.map +1 -1
  53. package/lib/main/browser/view/tree-view-widget.d.ts +2 -2
  54. package/lib/main/browser/view/tree-view-widget.d.ts.map +1 -1
  55. package/lib/main/browser/view/tree-view-widget.js +5 -4
  56. package/lib/main/browser/view/tree-view-widget.js.map +1 -1
  57. package/lib/plugin/comments.d.ts +2 -2
  58. package/lib/plugin/comments.d.ts.map +1 -1
  59. package/lib/plugin/comments.js.map +1 -1
  60. package/lib/plugin/terminal-ext.d.ts +2 -1
  61. package/lib/plugin/terminal-ext.d.ts.map +1 -1
  62. package/lib/plugin/terminal-ext.js +13 -3
  63. package/lib/plugin/terminal-ext.js.map +1 -1
  64. package/package.json +29 -29
  65. package/src/common/plugin-api-rpc-model.ts +2 -2
  66. package/src/common/plugin-api-rpc.ts +3 -2
  67. package/src/main/browser/comments/comment-thread-widget.tsx +177 -85
  68. package/src/main/browser/comments/{comments-context-key-service.ts → comments-context.ts} +1 -20
  69. package/src/main/browser/comments/comments-contribution.ts +5 -5
  70. package/src/main/browser/comments/comments-main.ts +5 -4
  71. package/src/main/browser/custom-editors/custom-editor-opener.tsx +5 -1
  72. package/src/main/browser/documents-main.ts +19 -10
  73. package/src/main/browser/main-context.ts +3 -1
  74. package/src/main/browser/menus/menus-contribution-handler.ts +68 -49
  75. package/src/main/browser/menus/plugin-menu-command-adapter.ts +13 -120
  76. package/src/main/browser/menus/vscode-theia-menu-mappings.ts +4 -6
  77. package/src/main/browser/plugin-ext-frontend-module.ts +2 -4
  78. package/src/main/browser/style/comments.css +9 -1
  79. package/src/main/browser/terminal-main.ts +4 -1
  80. package/src/main/browser/text-editor-model-service.ts +1 -6
  81. package/src/main/browser/view/tree-view-widget.tsx +7 -6
  82. package/src/plugin/comments.ts +4 -4
  83. package/src/plugin/terminal-ext.ts +14 -3
  84. package/lib/main/browser/comments/comments-context-key-service.d.ts.map +0 -1
  85. package/lib/main/browser/comments/comments-context-key-service.js.map +0 -1
@@ -35,7 +35,7 @@ import {
35
35
  ApplicationShell,
36
36
  KeybindingRegistry
37
37
  } from '@theia/core/lib/browser';
38
- import { MenuPath, MenuModelRegistry, ActionMenuNode } from '@theia/core/lib/common/menu';
38
+ import { MenuPath, MenuModelRegistry, CommandMenu, AcceleratorSource } from '@theia/core/lib/common/menu';
39
39
  import * as React from '@theia/core/shared/react';
40
40
  import { PluginSharedStyle } from '../plugin-shared-style';
41
41
  import { ACTION_ITEM, Widget } from '@theia/core/lib/browser/widgets/widget';
@@ -763,7 +763,7 @@ export class TreeViewWidget extends TreeViewWelcomeWidget {
763
763
  return this.contextKeys.with({ view: this.id, viewItem: treeViewNode.contextValue }, () => {
764
764
  const menu = this.menus.getMenu(VIEW_ITEM_INLINE_MENU);
765
765
  const args = this.toContextMenuArgs(treeViewNode);
766
- const inlineCommands = menu.children.filter((item): item is ActionMenuNode => item instanceof ActionMenuNode);
766
+ const inlineCommands = menu.children.filter((item): item is CommandMenu => CommandMenu.is(item));
767
767
  const tailDecorations = super.renderTailDecorations(treeViewNode, props);
768
768
  return <React.Fragment>
769
769
  {inlineCommands.length > 0 && <div className={TREE_NODE_SEGMENT_CLASS + ' flex'}>
@@ -796,17 +796,18 @@ export class TreeViewWidget extends TreeViewWelcomeWidget {
796
796
  }
797
797
 
798
798
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
799
- protected renderInlineCommand(actionMenuNode: ActionMenuNode, index: number, tabbable: boolean, args: any[]): React.ReactNode {
800
- if (!actionMenuNode.icon || !this.commands.isVisible(actionMenuNode.command, ...args) || !actionMenuNode.when || !this.contextKeys.match(actionMenuNode.when)) {
799
+ protected renderInlineCommand(actionMenuNode: CommandMenu, index: number, tabbable: boolean, args: any[]): React.ReactNode {
800
+ const nodePath = [...VIEW_ITEM_INLINE_MENU, actionMenuNode.id];
801
+ if (!actionMenuNode.icon || !actionMenuNode.isVisible(nodePath, this.contextKeys, undefined)) {
801
802
  return false;
802
803
  }
803
804
  const className = [TREE_NODE_SEGMENT_CLASS, TREE_NODE_TAIL_CLASS, actionMenuNode.icon, ACTION_ITEM, 'theia-tree-view-inline-action'].join(' ');
804
805
  const tabIndex = tabbable ? 0 : undefined;
805
- const titleString = actionMenuNode.label + this.resolveKeybindingForCommand(actionMenuNode.command);
806
+ const titleString = actionMenuNode.label + (AcceleratorSource.is(actionMenuNode) ? actionMenuNode.getAccelerator(undefined).join('+') : '');
806
807
 
807
808
  return <div key={index} className={className} title={titleString} tabIndex={tabIndex} onClick={e => {
808
809
  e.stopPropagation();
809
- this.commands.executeCommand(actionMenuNode.command, ...args);
810
+ actionMenuNode.run(nodePath, ...args);
810
811
  }} />;
811
812
  }
812
813
 
@@ -201,7 +201,7 @@ type CommentThreadModification = Partial<{
201
201
  comments: theia.Comment[],
202
202
  collapsibleState: theia.CommentThreadCollapsibleState
203
203
  state: theia.CommentThreadState
204
- canReply: boolean;
204
+ canReply: boolean | theia.CommentAuthorInformation;
205
205
  }>;
206
206
 
207
207
  export class ExtHostCommentThread implements theia.CommentThread, theia.Disposable {
@@ -315,12 +315,12 @@ export class ExtHostCommentThread implements theia.CommentThread, theia.Disposab
315
315
  return this._isDisposed;
316
316
  }
317
317
 
318
- private _canReply: boolean = true;
319
- get canReply(): boolean {
318
+ private _canReply: boolean | theia.CommentAuthorInformation = true;
319
+ get canReply(): boolean | theia.CommentAuthorInformation {
320
320
  return this._canReply;
321
321
  }
322
322
 
323
- set canReply(canReply: boolean) {
323
+ set canReply(canReply: boolean | theia.CommentAuthorInformation) {
324
324
  this._canReply = canReply;
325
325
  this.modifications.canReply = canReply;
326
326
  this._onDidUpdateCommentThread.fire();
@@ -161,13 +161,24 @@ export class TerminalServiceExtImpl implements TerminalServiceExt {
161
161
  terminal.emitOnInput(data);
162
162
  }
163
163
 
164
- $terminalStateChanged(id: string): void {
164
+ $terminalOnInteraction(id: string): void {
165
165
  const terminal = this._terminals.get(id);
166
166
  if (!terminal) {
167
167
  return;
168
168
  }
169
169
  if (!terminal.state.isInteractedWith) {
170
- terminal.state = { isInteractedWith: true };
170
+ terminal.state = { ...terminal.state, isInteractedWith: true };
171
+ this.onDidChangeTerminalStateEmitter.fire(terminal);
172
+ }
173
+ }
174
+
175
+ $terminalShellTypeChanged(id: string, shellType: string): void {
176
+ const terminal = this._terminals.get(id);
177
+ if (!terminal) {
178
+ return;
179
+ }
180
+ if (terminal.state.shell !== shellType) {
181
+ terminal.state = { ...terminal.state, shell: shellType };
171
182
  this.onDidChangeTerminalStateEmitter.fire(terminal);
172
183
  }
173
184
  }
@@ -472,7 +483,7 @@ export class TerminalExtImpl implements theia.Terminal {
472
483
 
473
484
  readonly creationOptions: Readonly<theia.TerminalOptions | theia.ExtensionTerminalOptions>;
474
485
 
475
- state: theia.TerminalState = { isInteractedWith: false };
486
+ state: theia.TerminalState = { isInteractedWith: false, shell: undefined };
476
487
 
477
488
  constructor(private readonly proxy: TerminalServiceMain, private readonly options: theia.TerminalOptions | theia.ExtensionTerminalOptions) {
478
489
  this.creationOptions = this.options;
@@ -1 +0,0 @@
1
- {"version":3,"file":"comments-context-key-service.d.ts","sourceRoot":"","sources":["../../../../src/main/browser/comments/comments-context-key-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,qBACa,yBAAyB;IAGlC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACxD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IACxD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,+CAAiC;IACrD,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,SAAS,CAAC,kBAAkB,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7D,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEnD,IAAI,iBAAiB,IAAI,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAEtD;IAED,IAAI,OAAO,IAAI,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAE5C;IAED,IAAI,cAAc,IAAI,UAAU,CAAC,OAAO,CAAC,CAExC;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAYtB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAMvC,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;CAIjD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"comments-context-key-service.js","sourceRoot":"","sources":["../../../../src/main/browser/comments/comments-context-key-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,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,4DAAiF;AACjF,qFAA4F;AAC5F,mDAAiD;AAG1C,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAA/B;QAIgB,gBAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;QACrC,uBAAkB,GAAG,IAAI,gBAAO,EAAQ,CAAC;QACnD,gBAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IAwCzD,CAAC;IAnCG,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAGS,IAAI;QACV,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACvC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAqB,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAC/G,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAqB,SAAS,EAAE,SAAS,CAAC,CAAC;QAC3F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAU,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACzF,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,UAAkB;;QAC5B,MAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,0CAAE,OAAO,CAAC,GAAG,CAAC,EAAE;YACxD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,UAA8B;QAChC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;CAEJ,CAAA;AA9CY,8DAAyB;AAGf;IADlB,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;oEAC8B;AAqB9C;IADT,IAAA,yBAAa,GAAE;;;;qDAWf;oCAlCQ,yBAAyB;IADrC,IAAA,sBAAU,GAAE;GACA,yBAAyB,CA8CrC"}