# menu method Null safety

1. @override

dynamic menu(

1. AppModel app

)
override

Construct the admin menu

## Implementation

    @override
    Future<MenuDefModel> menu(AppModel app) async {
      var menuItems = <MenuItemModel>[];

      menuItems.add(MenuItemModel(
          documentID: "Booklets",
          text: "Booklets",
          description: "Booklets",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app, pageID: "eliud_pkg_fundamentals_booklets_page")));

      menuItems.add(MenuItemModel(
          documentID: "DecoratedContents",
          text: "DecoratedContents",
          description: "DecoratedContents",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app,
              pageID: "eliud_pkg_fundamentals_decoratedcontents_page")));

      menuItems.add(MenuItemModel(
          documentID: "Dividers",
          text: "Dividers",
          description: "Dividers",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app, pageID: "eliud_pkg_fundamentals_dividers_page")));

      menuItems.add(MenuItemModel(
          documentID: "Documents",
          text: "Documents",
          description: "Documents",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action:
              GotoPage(app, pageID: "eliud_pkg_fundamentals_documents_page")));

      menuItems.add(MenuItemModel(
          documentID: "DynamicWidgets",
          text: "DynamicWidgets",
          description: "DynamicWidgets",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app,
              pageID: "eliud_pkg_fundamentals_dynamicwidgets_page")));

      menuItems.add(MenuItemModel(
          documentID: "Faders",
          text: "Faders",
          description: "Faders",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app, pageID: "eliud_pkg_fundamentals_faders_page")));

      menuItems.add(MenuItemModel(
          documentID: "Grids",
          text: "Grids",
          description: "Grids",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app, pageID: "eliud_pkg_fundamentals_grids_page")));

      menuItems.add(MenuItemModel(
          documentID: "Presentations",
          text: "Presentations",
          description: "Presentations",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action: GotoPage(app,
              pageID: "eliud_pkg_fundamentals_presentations_page")));

      menuItems.add(MenuItemModel(
          documentID: "SimpleImages",
          text: "SimpleImages",
          description: "SimpleImages",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action:
              GotoPage(app, pageID: "eliud_pkg_fundamentals_simpleimages_page")));

      menuItems.add(MenuItemModel(
          documentID: "SimpleTexts",
          text: "SimpleTexts",
          description: "SimpleTexts",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action:
              GotoPage(app, pageID: "eliud_pkg_fundamentals_simpletexts_page")));

      menuItems.add(MenuItemModel(
          documentID: "Tutorials",
          text: "Tutorials",
          description: "Tutorials",
          icon: IconModel(codePoint: 0xe88a, fontFamily: "MaterialIcons"),
          action:
              GotoPage(app, pageID: "eliud_pkg_fundamentals_tutorials_page")));

      MenuDefModel menu = MenuDefModel(
          admin: true,
          documentID: "eliud_pkg_fundamentals_admin_menu",
          appId: app.documentID,
          name: "eliud_pkg_fundamentals",
          menuItems: menuItems);
      await menuDefRepository(appId: app.documentID)!.add(menu);
      return menu;
    }