From 9c715428d18fdbd1a0e021fa3f97e70243c80806 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Tue, 24 Dec 2019 13:06:28 +0200
Subject: [PATCH] feat(tables): tables service in progress

---
 .../EditTableService/EditTableService.js             | 12 ++++++++++++
 .../EditTableService}/TableDropDownOptions.js        |  0
 .../InsertTableService/InsertTableService.js         | 12 ++++++++++++
 .../InsertTableService}/Table.js                     |  4 ++--
 .../src/TablesService/TablesService.js               | 10 ++++++++++
 wax-prosemirror-services/src/TablesService/index.js  |  0
 .../AnnotationToolGroupService/Annotations.js        |  8 ++------
 .../AnnotationToolGroupService/tools/index.js        |  2 --
 8 files changed, 38 insertions(+), 10 deletions(-)
 create mode 100644 wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js
 rename wax-prosemirror-services/src/{WaxToolGroups/AnnotationToolGroupService/tools => TablesService/EditTableService}/TableDropDownOptions.js (100%)
 create mode 100644 wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js
 rename wax-prosemirror-services/src/{WaxToolGroups/AnnotationToolGroupService/tools => TablesService/InsertTableService}/Table.js (80%)
 create mode 100644 wax-prosemirror-services/src/TablesService/TablesService.js
 create mode 100644 wax-prosemirror-services/src/TablesService/index.js

diff --git a/wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js b/wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js
new file mode 100644
index 000000000..12ed7228e
--- /dev/null
+++ b/wax-prosemirror-services/src/TablesService/EditTableService/EditTableService.js
@@ -0,0 +1,12 @@
+import Service from "wax-prosemirror-core/src/services/Service";
+import Table from "./Table";
+
+class EditTableService extends Service {
+  boot() {}
+
+  register() {
+    this.container.bind("TableDropDownOptions").to(TableDropDownOptions);
+  }
+}
+
+export default EditTableService;
diff --git a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/TableDropDownOptions.js b/wax-prosemirror-services/src/TablesService/EditTableService/TableDropDownOptions.js
similarity index 100%
rename from wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/TableDropDownOptions.js
rename to wax-prosemirror-services/src/TablesService/EditTableService/TableDropDownOptions.js
diff --git a/wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js b/wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js
new file mode 100644
index 000000000..1644a00da
--- /dev/null
+++ b/wax-prosemirror-services/src/TablesService/InsertTableService/InsertTableService.js
@@ -0,0 +1,12 @@
+import Service from "wax-prosemirror-core/src/services/Service";
+import Table from "./Table";
+
+class InsertTableService extends Service {
+  boot() {}
+
+  register() {
+    this.container.bind("Table").to(Table);
+  }
+}
+
+export default InsertTableService;
diff --git a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/Table.js b/wax-prosemirror-services/src/TablesService/InsertTableService/Table.js
similarity index 80%
rename from wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/Table.js
rename to wax-prosemirror-services/src/TablesService/InsertTableService/Table.js
index 5de1b8c84..238c9084e 100644
--- a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/Table.js
+++ b/wax-prosemirror-services/src/TablesService/InsertTableService/Table.js
@@ -1,5 +1,5 @@
-import Tools from "../../../lib/Tools";
-import { createTable, canInsert } from "../../../lib/Utils";
+import Tools from "../../lib/Tools";
+import { createTable, canInsert } from "../../lib/Utils";
 import { injectable } from "inversify";
 import { icons } from "wax-prosemirror-components";
 
diff --git a/wax-prosemirror-services/src/TablesService/TablesService.js b/wax-prosemirror-services/src/TablesService/TablesService.js
new file mode 100644
index 000000000..5d2805a7a
--- /dev/null
+++ b/wax-prosemirror-services/src/TablesService/TablesService.js
@@ -0,0 +1,10 @@
+import TablesServices from "./index";
+import Service from "wax-prosemirror-core/src/services/Service";
+
+class TablesService extends Service {
+  register() {
+    this.config.pushToArray("services", TablesServices);
+  }
+}
+
+export default TablesService;
diff --git a/wax-prosemirror-services/src/TablesService/index.js b/wax-prosemirror-services/src/TablesService/index.js
new file mode 100644
index 000000000..e69de29bb
diff --git a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/Annotations.js b/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/Annotations.js
index 31702bd78..cf8b59656 100644
--- a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/Annotations.js
+++ b/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/Annotations.js
@@ -15,9 +15,7 @@ class Annotations extends ToolGroup {
     @inject("Superscript") superscript,
     @inject("Underline") underline,
     @inject("Blockquote") blockquote,
-    @inject("Image") image,
-    @inject("Table") table,
-    @inject("TableDropDownOptions") tableDropDownOptions
+    @inject("Image") image
   ) {
     super();
     this.tools = [
@@ -31,9 +29,7 @@ class Annotations extends ToolGroup {
       superscript,
       underline,
       blockquote,
-      tableDropDownOptions,
-      image,
-      table
+      image
     ];
   }
 
diff --git a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/index.js b/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/index.js
index 02d863b5b..aa1b1d707 100644
--- a/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/index.js
+++ b/wax-prosemirror-services/src/WaxToolGroups/AnnotationToolGroupService/tools/index.js
@@ -1,3 +1 @@
 export { default as Blockquote } from "./Blockquote";
-export { default as Table } from "./Table";
-export { default as TableDropDownOptions } from "./TableDropDownOptions";
-- 
GitLab