From 96547eb1975357d7c5795588981b4520a8df2f95 Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Mon, 25 Jul 2022 16:45:18 +0300
Subject: [PATCH] find sections

---
 wax-prosemirror-core/src/WaxView.js            |  7 ++++++-
 .../PopulateHeadingsComponent.js               | 18 ++++++++++++++----
 .../src/OverlayService/usePosition.js          |  1 -
 3 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/wax-prosemirror-core/src/WaxView.js b/wax-prosemirror-core/src/WaxView.js
index 5342c95d7..45382705d 100644
--- a/wax-prosemirror-core/src/WaxView.js
+++ b/wax-prosemirror-core/src/WaxView.js
@@ -102,7 +102,12 @@ const WaxView = forwardRef((props, ref) => {
           'main',
         );
         if (debug) applyDevTools(view);
-        if (autoFocus && view) view.focus();
+        if (autoFocus && view)
+          setTimeout(() => {
+            view.focus();
+            view.state.tr.insertText('', 0);
+            view.dispatch(view.state.tr);
+          }, 500);
 
         return () => view.destroy();
       }
diff --git a/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js b/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js
index 79e791bbd..5ffb88c24 100644
--- a/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js
+++ b/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js
@@ -4,7 +4,6 @@ import { WaxContext } from 'wax-prosemirror-core';
 import { DOMParser } from 'prosemirror-model';
 import { ReplaceStep, ReplaceAroundStep } from 'prosemirror-transform';
 import { Selection } from 'prosemirror-state';
-import { v4 as uuidv4 } from 'uuid';
 import styled from 'styled-components';
 import { Icon } from 'wax-prosemirror-components';
 
@@ -70,15 +69,22 @@ export default ({ setPosition, position }) => {
     setPosition({ ...position, left, top });
   }, [position.left]);
 
-  useEffect(() => {}, []);
-
   const generateHeadings = () => {
     const {
       tr,
       selection: { from, to },
+      doc,
     } = main.state;
     const parser = DOMParser.fromSchema(main.state.config.schema);
 
+    const allSections = [];
+
+    doc.descendants((editorNode, index) => {
+      if (Node.type.name === 'oen_section') {
+        allSections.push(editorNode);
+      }
+    });
+
     const content =
       '<h1>heading when i click note</h1><p>some text when i click note</p>';
     const parsedContent = parser.parse(elementFromString(content));
@@ -88,6 +94,10 @@ export default ({ setPosition, position }) => {
   };
 
   if (!readOnly) {
-    return <button onClick={generateHeadings}>generate</button>;
+    return (
+      <button onClick={generateHeadings} type="button">
+        generate
+      </button>
+    );
   }
 };
diff --git a/wax-prosemirror-services/src/OverlayService/usePosition.js b/wax-prosemirror-services/src/OverlayService/usePosition.js
index c883feea2..e01b067c4 100644
--- a/wax-prosemirror-services/src/OverlayService/usePosition.js
+++ b/wax-prosemirror-services/src/OverlayService/usePosition.js
@@ -57,7 +57,6 @@ export default options => {
     const PMnode = focusedView.state.schema.nodes[nodeType];
 
     node = DocumentHelpers.findNode(focusedView.state, PMnode, findInParent);
-    console.log(node);
     if (!isObject(node)) return defaultOverlay;
     const { from, to } = followCursor ? focusedView.state.selection : node;
 
-- 
GitLab