From af255650154b1e7e64e140e7dc62e6c4a5d84477 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Mon, 14 Feb 2022 02:39:49 +0200
Subject: [PATCH] submit show feedback

---
 editors/demo/src/HHMI/HHMI.js                 | 20 ++++++++++++++-----
 wax-prosemirror-core/src/WaxView.js           |  1 +
 .../components/AnswerComponent.js             |  5 ++++-
 3 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/editors/demo/src/HHMI/HHMI.js b/editors/demo/src/HHMI/HHMI.js
index dd39bc386..ac76f3f00 100644
--- a/editors/demo/src/HHMI/HHMI.js
+++ b/editors/demo/src/HHMI/HHMI.js
@@ -1,4 +1,5 @@
-import React from 'react';
+import React, { useState } from 'react';
+import styled from 'styled-components';
 
 import { Wax } from 'wax-prosemirror-core';
 
@@ -15,18 +16,27 @@ const renderImage = file => {
   });
 };
 
-const t = `<p class="paragraph"></p><div id="84db3734-94ed-4dd0-82bb-15404854df0f" class="multiple-choice"><div class="multiple-choice-question" id="38de8538-647a-489d-8474-f92d0d256c32"><p class="paragraph">question</p></div><div class="multiple-choice-option" id="debb868e-bbfe-4ba2-bf93-c963153ff791" correct="false" feedback=""><p class="paragraph">answer 1</p></div><div class="multiple-choice-option" id="810bcf10-4fcb-4d1e-9dab-ce35cbd28527" correct="false" feedback=""><p class="paragraph">answer 2</p></div></div>`;
+const SubmitButton = styled.button`
+  position: absolute;
+  left: 600px;
+  top: 16px;
+`;
 
-const submitQuestions = () => {};
+const t = `<p class="paragraph"></p><div id="84db3734-94ed-4dd0-82bb-15404854df0f" class="multiple-choice"><div class="multiple-choice-question" id="38de8538-647a-489d-8474-f92d0d256c32"><p class="paragraph">question</p></div><div class="multiple-choice-option" id="debb868e-bbfe-4ba2-bf93-c963153ff791" correct="false" feedback="feedback 1"><p class="paragraph">answer 1</p></div><div class="multiple-choice-option" id="810bcf10-4fcb-4d1e-9dab-ce35cbd28527" correct="false" feedback="feedback 2"><p class="paragraph">answer 2</p></div></div>`;
 
 const Hhmi = () => {
+  const [submited, isSubmited] = useState(false);
+  const submitQuestions = () => {
+    isSubmited(true);
+  };
+
   return (
     <>
-      <button onClick={submitQuestions}>Submit</button>
+      <SubmitButton onClick={submitQuestions}>Submit</SubmitButton>
       <Wax
         config={config}
         autoFocus
-        customValues={{ showFeedBack: false }}
+        customValues={{ showFeedBack: submited }}
         fileUpload={file => renderImage(file)}
         value={t}
         readonly
diff --git a/wax-prosemirror-core/src/WaxView.js b/wax-prosemirror-core/src/WaxView.js
index d21e175a8..d29d850e3 100644
--- a/wax-prosemirror-core/src/WaxView.js
+++ b/wax-prosemirror-core/src/WaxView.js
@@ -70,6 +70,7 @@ const WaxView = forwardRef((props, ref) => {
           { mount: node },
           {
             editable: () => !readonly,
+            customValues,
             state: EditorState.create(options),
             dispatchTransaction,
             disallowedTools: [],
diff --git a/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/AnswerComponent.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/AnswerComponent.js
index f2d463094..f05649d4b 100644
--- a/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/AnswerComponent.js
+++ b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/AnswerComponent.js
@@ -1,3 +1,4 @@
+/* eslint-disable react/destructuring-assignment */
 /* eslint-disable react/prop-types */
 import React, { useContext } from 'react';
 import styled from 'styled-components';
@@ -76,6 +77,8 @@ export default ({ node, view, getPos }) => {
     view: { main },
   } = context;
 
+  const customProps = context.view.main.props.customValues;
+
   const isEditable = main.props.editable(editable => {
     return editable;
   });
@@ -176,7 +179,7 @@ export default ({ node, view, getPos }) => {
           <QuestionData>
             <EditorComponent getPos={getPos} node={node} view={view} />
           </QuestionData>
-          {!readOnly && (
+          {customProps.showFeedBack && (
             <FeedbackComponent getPos={getPos} node={node} view={view} />
           )}
         </QuestionWrapper>
-- 
GitLab