Skip to content

Commit 6d6216a

Browse files
committed
feat: Refactor console objects menu
- Split ConsoleMenu up so objects is it's own component ConsoleObjectsMenu - Convert to functional component - Display all widgets in the menu - Add a flag to hide the menu, which we set for DHC, but will not be set in DHE so current behaviour is not broken there
1 parent 7d59d09 commit 6d6216a

7 files changed

Lines changed: 211 additions & 407 deletions

File tree

packages/console/src/Console.tsx

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import {
3434
CommandHistoryStorage,
3535
CommandHistoryStorageItem,
3636
} from './command-history';
37+
import ConsoleObjectsMenu from './ConsoleObjectsMenu';
3738

3839
const log = Log.module('Console');
3940

@@ -51,7 +52,13 @@ const DEFAULT_SETTINGS: Settings = {
5152

5253
interface ConsoleProps {
5354
dh: typeof DhType;
55+
56+
/** Additional children to show in the objects menu */
5457
statusBarChildren: ReactNode;
58+
59+
/** Hide the objects menu in the status bar. Defaults to false. */
60+
hideObjectsMenu?: boolean;
61+
5562
settings: Partial<Settings>;
5663
focusCommandHistory: () => void;
5764

@@ -899,9 +906,8 @@ export class Console extends PureComponent<ConsoleProps, ConsoleState> {
899906
}
900907

901908
getObjects = memoize(
902-
(objectMap: Map<string, DhType.ide.VariableDefinition>) => [
903-
...objectMap.values(),
904-
]
909+
(objectMap: Map<string, DhType.ide.VariableDefinition>) =>
910+
Array.from(objectMap.values())
905911
);
906912

907913
getContextActions = memoize(
@@ -984,6 +990,7 @@ export class Console extends PureComponent<ConsoleProps, ConsoleState> {
984990
unzip,
985991
supportsType,
986992
iconForType,
993+
hideObjectsMenu,
987994
} = this.props;
988995
const {
989996
consoleHeight,
@@ -1010,10 +1017,14 @@ export class Console extends PureComponent<ConsoleProps, ConsoleState> {
10101017
dh={dh}
10111018
session={session}
10121019
overflowActions={this.handleOverflowActions}
1013-
openObject={openObject}
1014-
objects={consoleMenuObjects}
10151020
>
10161021
{statusBarChildren}
1022+
{hideObjectsMenu !== true && (
1023+
<ConsoleObjectsMenu
1024+
openObject={openObject}
1025+
objects={consoleMenuObjects}
1026+
/>
1027+
)}
10171028
</ConsoleStatusBar>
10181029
<div
10191030
className="console-csv-container"

packages/console/src/ConsoleMenu.tsx

Lines changed: 0 additions & 271 deletions
This file was deleted.

0 commit comments

Comments
 (0)