From 38b18739072ef2ba4a627e8291fdbe7620432c24 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Fri, 19 Apr 2019 17:26:05 +0300
Subject: [PATCH] build a basic menubar with options

---
 editors/default/src/Default.js                | 22 -------------------
 .../mainMenuBar/MainMenuBar.js                | 16 +++++++++++---
 2 files changed, 13 insertions(+), 25 deletions(-)

diff --git a/editors/default/src/Default.js b/editors/default/src/Default.js
index ab2c49246..7289f7c1a 100644
--- a/editors/default/src/Default.js
+++ b/editors/default/src/Default.js
@@ -1,9 +1,6 @@
 import React, { Component } from "react";
-import styled from "styled-components";
-
 import { Wax, createSchema } from "wax-prosemirror-core";
 import { defaultSchema } from "wax-prosemirror-schema";
-import { MainMenuBar } from "wax-prosemirror-components";
 import "wax-prosemirror-layouts/defaultLayout.css";
 import "wax-prosemirror-themes/defaultTheme.css";
 
@@ -14,19 +11,6 @@ const options = {
   schema: new createSchema(defaultSchema)
 };
 
-const MainEditor = styled.div`
-  ${"" /* style override*/};
-`;
-
-const menuItems = [
-  "undo",
-  "redo",
-  "strong",
-  "image",
-  "table",
-  "tableDropDownOptions"
-];
-
 class Default extends Component {
   render() {
     return (
@@ -37,12 +21,6 @@ class Default extends Component {
         theme="default"
         layout="default"
         debug
-        renderLayout={({ editor, ...props }) => (
-          <React.Fragment>
-            <MainMenuBar menuItems={menuItems} {...props} />
-            <MainEditor className="main-editor">{editor}</MainEditor>
-          </React.Fragment>
-        )}
       />
     );
   }
diff --git a/wax-prosemirror-components/mainMenuBar/MainMenuBar.js b/wax-prosemirror-components/mainMenuBar/MainMenuBar.js
index b828b56be..a13a7c1f4 100644
--- a/wax-prosemirror-components/mainMenuBar/MainMenuBar.js
+++ b/wax-prosemirror-components/mainMenuBar/MainMenuBar.js
@@ -1,5 +1,5 @@
 import React from "react";
-import map from "lodash/map";
+import { forEach, map } from "lodash";
 import classes from "./MenuBar.css";
 import menu from "./menu";
 
@@ -11,8 +11,18 @@ const filtered = (menu, menuItems) =>
       return obj;
     }, {});
 
+const setMenuItems = (menu, menuItems) => {
+  let items = menuItems;
+  if (menuItems.length === 0) {
+    forEach(menu, (key, index) => {
+      items.push(index);
+    });
+  }
+  return filtered(menu, items);
+};
+
 const MainMenuBar = ({
-  menuItems,
+  menuItems = [],
   children,
   state,
   dispatch,
@@ -23,7 +33,7 @@ const MainMenuBar = ({
     {children && <span className={classes.group}>{children}</span>}
     {
       <span className={classes.group}>
-        {map(filtered(menu, menuItems), item =>
+        {map(setMenuItems(menu, menuItems), item =>
           item.menu({ state, dispatch, item, fileUpload })
         )}
       </span>
-- 
GitLab