From 437a40f5c0cf9b5f229ee79fd837303faf36c389 Mon Sep 17 00:00:00 2001 From: chris <kokosias@yahoo.gr> Date: Thu, 11 Aug 2022 14:27:14 +0300 Subject: [PATCH] save multiple dropdown feedback --- editors/demo/src/HHMI/HHMI.js | 2 +- .../components/FeedbackComponent.js | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/editors/demo/src/HHMI/HHMI.js b/editors/demo/src/HHMI/HHMI.js index f161b02fa..a95998aac 100644 --- a/editors/demo/src/HHMI/HHMI.js +++ b/editors/demo/src/HHMI/HHMI.js @@ -82,7 +82,7 @@ const Hhmi = () => { ref={editorRef} customValues={{ showFeedBack: submited }} fileUpload={file => renderImage(file)} - value={content} + // value={content} readonly={readOnly} layout={HhmiLayout} onChange={source => console.log(source)} diff --git a/wax-prosemirror-services/src/MatchingService/components/FeedbackComponent.js b/wax-prosemirror-services/src/MatchingService/components/FeedbackComponent.js index 1ea470dc2..7e95320ce 100644 --- a/wax-prosemirror-services/src/MatchingService/components/FeedbackComponent.js +++ b/wax-prosemirror-services/src/MatchingService/components/FeedbackComponent.js @@ -72,6 +72,18 @@ export default ({ node, view, getPos, readOnly }) => { }; const saveFeedBack = () => { + const allNodes = getNodes(main); + allNodes.forEach(singleNode => { + if (singleNode.node.attrs.id === node.attrs.id) { + main.dispatch( + main.state.tr.setNodeMarkup(getPos(), undefined, { + ...singleNode.node.attrs, + feedback: feedBack, + }), + ); + setFirstRun(false); + } + }); return false; }; @@ -103,7 +115,7 @@ const getNodes = view => { const allNodes = DocumentHelpers.findBlockNodes(view.state.doc); const fillTheGapNodes = []; allNodes.forEach(node => { - if (node.node.type.name === 'fill_the_gap_container') + if (node.node.type.name === 'matching_container') fillTheGapNodes.push(node); }); return fillTheGapNodes; -- GitLab