Skip to content

Commit e1dc7e6

Browse files
committed
fix: Trigger-less drawers in classic theme
1 parent ea2b35b commit e1dc7e6

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

src/app-layout/__tests__/runtime-drawers.test.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,11 @@ describeEachAppLayout(({ size }) => {
7676
expect(wrapper.findDrawersTriggers()).toHaveLength(0);
7777
});
7878

79+
test('runtime drawer triggerless does not crash page', async () => {
80+
awsuiPlugins.appLayout.registerDrawer({ ...drawerDefaults, trigger: undefined });
81+
await expect(renderComponent(<AppLayout />)).resolves.not.toThrow();
82+
});
83+
7984
test('runtime drawers integration can be dynamically enabled and disabled', async () => {
8085
awsuiPlugins.appLayout.registerDrawer(drawerDefaults);
8186
const { wrapper, rerender } = await renderComponent(<AppLayout />);

src/app-layout/classic.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,7 @@ const ClassicAppLayout = React.forwardRef(
408408
onToolsOpen={() => onToolsToggle(true)}
409409
unfocusable={anyPanelOpen}
410410
mobileBarRef={mobileBarRef}
411-
drawers={drawers}
411+
drawers={drawers?.filter(drawer => drawer.trigger)}
412412
activeDrawerId={activeDrawerId}
413413
onDrawerChange={newDrawerId => {
414414
onActiveDrawerChange(newDrawerId, { initiatedByUserAction: true });
@@ -590,7 +590,7 @@ const ClassicAppLayout = React.forwardRef(
590590
bottomOffset={placement.insetBlockEnd}
591591
topOffset={placement.insetBlockStart}
592592
isMobile={isMobile}
593-
drawers={drawers}
593+
drawers={drawers.filter(drawer => drawer.trigger)}
594594
activeDrawerId={activeDrawerId}
595595
onDrawerChange={newDrawerId => {
596596
if (activeDrawerId !== newDrawerId) {

0 commit comments

Comments
 (0)