From 3a9791e7943c5572d24b257217bfe1558beff5fc Mon Sep 17 00:00:00 2001
From: Fabio Berger <me@fabioberger.com>
Date: Mon, 1 Oct 2018 22:26:06 +0100
Subject: Make menuSubsectionsBySection optional

---
 packages/react-shared/src/components/nested_sidebar_menu.tsx | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

(limited to 'packages/react-shared/src/components/nested_sidebar_menu.tsx')

diff --git a/packages/react-shared/src/components/nested_sidebar_menu.tsx b/packages/react-shared/src/components/nested_sidebar_menu.tsx
index 14b233cd6..9933f3b38 100644
--- a/packages/react-shared/src/components/nested_sidebar_menu.tsx
+++ b/packages/react-shared/src/components/nested_sidebar_menu.tsx
@@ -12,7 +12,7 @@ import { VersionDropDown } from './version_drop_down';
 
 export interface NestedSidebarMenuProps {
     topLevelMenu: { [topLevel: string]: string[] };
-    menuSubsectionsBySection: MenuSubsectionsBySection;
+    menuSubsectionsBySection?: MenuSubsectionsBySection;
     sidebarHeader?: React.ReactNode;
     shouldDisplaySectionHeaders?: boolean;
     onMenuItemClick?: () => void;
@@ -44,6 +44,7 @@ export class NestedSidebarMenu extends React.Component<NestedSidebarMenuProps, N
         shouldDisplaySectionHeaders: true,
         onMenuItemClick: _.noop.bind(_),
         shouldReformatMenuItemNames: true,
+        menuSubsectionsBySection: {},
     };
     public render(): React.ReactNode {
         const navigation = _.map(this.props.topLevelMenu, (menuItems: string[], sectionName: string) => {
@@ -122,7 +123,10 @@ export class NestedSidebarMenu extends React.Component<NestedSidebarMenuProps, N
         return menuItems;
     }
     private _renderMenuItemSubsections(menuItemName: string): React.ReactNode {
-        if (_.isUndefined(this.props.menuSubsectionsBySection[menuItemName])) {
+        if (
+            _.isUndefined(this.props.menuSubsectionsBySection) ||
+            _.isUndefined(this.props.menuSubsectionsBySection[menuItemName])
+        ) {
             return null;
         }
         return this._renderMenuSubsectionsBySection(menuItemName, this.props.menuSubsectionsBySection[menuItemName]);
-- 
cgit v1.2.3

