From 8c15351e5c88221a0f4773259abdaf4e46277f79 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Tue, 16 Apr 2019 23:54:05 +0300
Subject: [PATCH] WIP creating default

---
 editors/default/src/Default.js          |  9 +++++++++
 wax-prosemirror-core/Wax.js             |  2 +-
 wax-prosemirror-core/config/plugins.js  | 21 ++++++++++----------
 wax-prosemirror-schema/defaultSchema.js | 26 +++++++++++++++----------
 4 files changed, 37 insertions(+), 21 deletions(-)

diff --git a/editors/default/src/Default.js b/editors/default/src/Default.js
index 0a887e868..88e0598bd 100644
--- a/editors/default/src/Default.js
+++ b/editors/default/src/Default.js
@@ -1,12 +1,21 @@
 import React, { Component } from "react";
+import { Schema } from "prosemirror-model";
 import { Wax } from "wax-prosemirror-core";
 import { defaultSchema } from "wax-prosemirror-schema";
 
+const { nodes, marks } = defaultSchema;
+
+const options = {
+  schema: new Schema({ nodes, marks })
+};
+
 class Default extends Component {
   render() {
+    console.log(options.schema);
     return (
       <Wax
         placeholder="Type Something..."
+        options={options}
         autoFocus
         theme="default"
         layout="default"
diff --git a/wax-prosemirror-core/Wax.js b/wax-prosemirror-core/Wax.js
index 20e173f56..4f1d59e72 100644
--- a/wax-prosemirror-core/Wax.js
+++ b/wax-prosemirror-core/Wax.js
@@ -35,9 +35,9 @@ const serializer = schema => {
 class Wax extends Component {
   componentWillMount() {
     const { value, onChange, options } = this.props;
+    const { schema } = options;
     const WaxOnchange = onChange ? onChange : value => true;
 
-    const schema = WaxSchema();
     const keys =
       options && options.keys
         ? options.keys
diff --git a/wax-prosemirror-core/config/plugins.js b/wax-prosemirror-core/config/plugins.js
index bcaecfa01..37f83ca3a 100644
--- a/wax-prosemirror-core/config/plugins.js
+++ b/wax-prosemirror-core/config/plugins.js
@@ -1,24 +1,25 @@
 import { history } from "prosemirror-history";
 import { dropCursor } from "prosemirror-dropcursor";
 import { gapCursor } from "prosemirror-gapcursor";
-
-import "prosemirror-tables/style/tables.css";
 import "prosemirror-gapcursor/style/gapcursor.css";
+
+//TODO remove everything in comments
+// import "prosemirror-tables/style/tables.css";
 import placeholderPlugin from "./plugins/placeholderPlugin";
-import { columnResizing, tableEditing } from "prosemirror-tables";
+// import { columnResizing, tableEditing } from "prosemirror-tables";
 
-import rules from "./rules";
+// import rules from "./rules";
 
 export default [
-  rules,
+  // rules,
   dropCursor(),
   gapCursor(),
   history(),
-  placeholderPlugin,
-  columnResizing(),
-  tableEditing()
+  placeholderPlugin
+  // columnResizing(),
+  // tableEditing()
 ];
 
 // for tables
-document.execCommand("enableObjectResizing", false, false);
-document.execCommand("enableInlineTableEditing", false, false);
+// document.execCommand("enableObjectResizing", false, false);
+// document.execCommand("enableInlineTableEditing", false, false);
diff --git a/wax-prosemirror-schema/defaultSchema.js b/wax-prosemirror-schema/defaultSchema.js
index 18e72194d..5ce06618e 100644
--- a/wax-prosemirror-schema/defaultSchema.js
+++ b/wax-prosemirror-schema/defaultSchema.js
@@ -1,17 +1,23 @@
 const pDOM = ["p", 0];
 const defaultSchema = {
-  doc: {
-    content: "block+"
-  },
+  nodes: {
+    doc: {
+      content: "block+"
+    },
+    text: {
+      group: "inline"
+    },
 
-  paragraph: {
-    content: "inline*",
-    group: "block",
-    parseDOM: [{ tag: "p" }],
-    toDOM() {
-      return pDOM;
+    paragraph: {
+      content: "inline*",
+      group: "block",
+      parseDOM: [{ tag: "p" }],
+      toDOM() {
+        return pDOM;
+      }
     }
-  }
+  },
+  marks: {}
 };
 
 export default defaultSchema;
-- 
GitLab