Skip to content

Commit 43279c0

Browse files
authored
feat(collapsible-sidebar): add prop to hide Box logo (#3256)
* feat(collapsible-sidebar): add prop to hide Box logo * feat(collapsible-sidebar): rename prop and adjust tests
1 parent b75c7ee commit 43279c0

File tree

2 files changed

+29
-11
lines changed

2 files changed

+29
-11
lines changed

src/features/collapsible-sidebar/CollapsibleSidebarLogo.js

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,15 @@ type Props = {
7272
/** Controls whether or not the sidebar is expanded on the page */
7373
expanded: boolean,
7474

75+
isLogoVisible?: boolean,
76+
7577
linkProps: Object,
7678

7779
onToggle: () => void,
7880
} & InjectIntlProvidedProps;
7981

8082
function CollapsibleSidebarLogo(props: Props) {
81-
const { badge, buttonProps, className, expanded, linkProps, onToggle, intl } = props;
83+
const { badge, buttonProps, className, expanded, isLogoVisible = true, linkProps, onToggle, intl } = props;
8284

8385
const classes = classNames('bdl-CollapsibleSidebar-logo', className);
8486

@@ -102,16 +104,18 @@ function CollapsibleSidebarLogo(props: Props) {
102104
expandedElement={
103105
<>
104106
{toggleButton}
105-
<LinkBase className="bdl-CollapsibleSidebar-logoLink" {...linkProps}>
106-
<>
107-
<StyledLogo
108-
className="bdl-CollapsibleSidebar-logoIcon"
109-
height={32 + 2 * 1 /* border */ + 2 * 4 /* padding */}
110-
width={61 + 2 * 1 /* border */ + 2 * 4 /* padding */}
111-
/>
112-
{badge}
113-
</>
114-
</LinkBase>
107+
{isLogoVisible && (
108+
<LinkBase className="bdl-CollapsibleSidebar-logoLink" {...linkProps}>
109+
<>
110+
<StyledLogo
111+
className="bdl-CollapsibleSidebar-logoIcon"
112+
height={32 + 2 * 1 /* border */ + 2 * 4 /* padding */}
113+
width={61 + 2 * 1 /* border */ + 2 * 4 /* padding */}
114+
/>
115+
{badge}
116+
</>
117+
</LinkBase>
118+
)}
115119
</>
116120
}
117121
/>

src/features/collapsible-sidebar/__tests__/CollapsibleSidebarLogo.test.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,18 @@ describe('components/core/collapsible-sidebar/CollapsibleSidebar', () => {
6969
const componentProp = sidebar.find('CollapsibleSidebarItem');
7070
expect(componentProp.find('LinkBase').prop('someprop')).toBe(someValue);
7171
});
72+
73+
test.each([
74+
[true, true],
75+
[false, false],
76+
[undefined, true],
77+
])('render Box logo when isLogoVisible=%s', (isLogoVisible, result) => {
78+
const sidebar = getWrapper({
79+
expanded: true,
80+
isLogoVisible,
81+
});
82+
83+
const componentProp = sidebar.find('CollapsibleSidebarItem');
84+
expect(componentProp.exists('.bdl-CollapsibleSidebar-logoLink')).toBe(result);
85+
});
7286
});

0 commit comments

Comments
 (0)