From bb2d0f5a270540d52fec33fd92f2c8a59fadcafd Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Thu, 1 Apr 2021 18:56:27 +0300
Subject: [PATCH] initial service

---
 .../MultipleChoiceQuestion.js                 | 27 +++++++++++++++++++
 .../MultipleChoiceQuestionService.js          | 14 ++++++++++
 editors/editoria/src/config/config.js         |  5 ++++
 wax-prosemirror-services/index.js             |  2 +-
 4 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
 create mode 100644 editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js

diff --git a/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
new file mode 100644
index 000000000..a50f29656
--- /dev/null
+++ b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
@@ -0,0 +1,27 @@
+import { injectable } from 'inversify';
+import { Tools } from 'wax-prosemirror-services';
+
+@injectable()
+class MultipleChoiceQuestion extends Tools {
+  title = 'Change to Multiple Choice';
+  label = 'Multiple Choice';
+  name = 'Multiple Choice';
+
+  get run() {
+    return (state, dispatch) => {};
+  }
+
+  get active() {
+    return state => {};
+  }
+
+  select = (state, activeViewId) => {
+    return true;
+  };
+
+  get enable() {
+    return state => {};
+  }
+}
+
+export default MultipleChoiceQuestion;
diff --git a/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
new file mode 100644
index 000000000..c128ee420
--- /dev/null
+++ b/editors/editoria/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
@@ -0,0 +1,14 @@
+import { Service } from 'wax-prosemirror-services';
+import MultipleChoiceQuestion from './MultipleChoiceQuestion';
+
+class MultipleChoiceQuestionService extends Service {
+  boot() {}
+
+  register() {
+    this.container.bind('MultipleChoiceQuestion').to(MultipleChoiceQuestion);
+    const createNode = this.container.get('CreateNode');
+    console.log(createNode);
+  }
+}
+
+export default MultipleChoiceQuestionService;
diff --git a/editors/editoria/src/config/config.js b/editors/editoria/src/config/config.js
index b428865c8..decd0aacf 100644
--- a/editors/editoria/src/config/config.js
+++ b/editors/editoria/src/config/config.js
@@ -49,6 +49,10 @@ import { DefaultSchema } from 'wax-prosemirror-utilities';
 
 import { WaxSelectionPlugin } from 'wax-prosemirror-plugins';
 
+/* Test Question Service*/
+
+import MultipleChoiceQuestionService from '../MultipleChoiceQuestionService/MultipleChoiceQuestionService';
+
 import invisibles, {
   space,
   hardBreak,
@@ -152,6 +156,7 @@ export default {
   },
 
   services: [
+    new MultipleChoiceQuestionService(),
     new CustomTagService(),
     new DisplayBlockLevelService(),
     new DisplayToolGroupService(),
diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js
index da3445673..44320d00a 100644
--- a/wax-prosemirror-services/index.js
+++ b/wax-prosemirror-services/index.js
@@ -9,7 +9,7 @@ export { default as SchemaService } from './src/SchemaService/SchemaService';
 
 export { default as ShortCutsService } from './src/ShortCutsService/ShortCutsService';
 
-export { default as Tool } from './src/lib/Tools';
+export { default as Tools } from './src/lib/Tools';
 
 /*
 All Elements services
-- 
GitLab