Skip to content

Commit 826fca9

Browse files
chore(compass-workspaces): fix for sidebar getting remounted on every render (#5907)
1 parent 3855ec1 commit 826fca9

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

packages/compass-workspaces/src/components/index.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,17 +116,15 @@ const WorkspacesWithSidebar: React.FunctionComponent<
116116
darkMode ? containerDarkThemeStyles : containerLightThemeStyles
117117
)}
118118
>
119-
<div className={sidebarStyles}>
120-
{renderSidebar && React.createElement(renderSidebar)}
121-
</div>
119+
<div className={sidebarStyles}>{renderSidebar?.()}</div>
122120
<div className={workspacesStyles}>
123121
<Workspaces
124122
singleConnectionConnectionInfo={singleConnectionConnectionInfo}
125123
openOnEmptyWorkspace={openOnEmptyWorkspace}
126124
></Workspaces>
127125
</div>
128126
</div>
129-
{renderModals && React.createElement(renderModals)}
127+
{renderModals?.()}
130128
</WorkspacesServiceProvider>
131129
);
132130
};

packages/compass-workspaces/src/index.spec.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@ describe('WorkspacesPlugin', function () {
4646
const onTabChangeSpy = sandbox.spy();
4747

4848
function renderPlugin() {
49+
const Modals: React.FC = () => {
50+
openFns = useOpenWorkspace();
51+
return null;
52+
};
4953
return render(
5054
<WorkspacesProvider
5155
value={[
@@ -60,8 +64,7 @@ describe('WorkspacesPlugin', function () {
6064
<Plugin
6165
onActiveWorkspaceTabChange={onTabChangeSpy}
6266
renderModals={() => {
63-
openFns = useOpenWorkspace();
64-
return null;
67+
return <Modals />;
6568
}}
6669
></Plugin>
6770
</WorkspacesProvider>

0 commit comments

Comments
 (0)