From 95e91c3594e1c1d650cdbf12367466be3fc84837 Mon Sep 17 00:00:00 2001
From: Adam Procter <adamprocter@researchnot.es>
Date: Thu, 1 Oct 2020 13:18:09 +0100
Subject: [PATCH] broken

---
 .DS_Store                              | Bin 10244 -> 10244 bytes
 app/src/components/NodesLayer.vue      | 218 ++++++--------------
 app/src/components/OtherNodeslayer.vue | 275 ++++++++-----------------
 3 files changed, 145 insertions(+), 348 deletions(-)

diff --git a/.DS_Store b/.DS_Store
index 109c2ae889d0ec12ec3cae3d563a2b76b53bdc04..168e6ef6134c828e8a261816e920c3331eeec3ee 100644
GIT binary patch
delta 19
acmZn(XbISGMu5%SQb)niZ1W`nBXIyl0|q<*

delta 19
acmZn(XbISGMu5%IQb)niWb-8fBXIyl4F)^_

diff --git a/app/src/components/NodesLayer.vue b/app/src/components/NodesLayer.vue
index c0c26de..a19e516 100644
--- a/app/src/components/NodesLayer.vue
+++ b/app/src/components/NodesLayer.vue
@@ -1,169 +1,77 @@
 <template>
   <div ref="nodes" class="node">
     <div v-for="(value, index) in configPositions" v-bind:key="index">
-      <div v-if="toolmode == 'move'">
-        <vue-draggable-resizable
-          class="innernode"
-          v-if="nodeid == value.node_id && deleted == false"
-          :w="value.width"
-          :h="value.height"
-          :x="value.x_pos"
-          :y="value.y_pos"
-          :z="value.z_index"
-          :draggable="false"
-          :resizable="false"
-          style="border: 2px dashed black; background-color: rgb(155, 194, 216)"
-          :min-width="200"
-          :min-height="220"
-        >
-          <form>
-            <div v-if="value.read_mode == false">
-              <div v-for="value in myNodes" v-bind:key="value.node_id">
-                <textarea
-                  v-if="nodeid == value.node_id"
-                  @focus="editTrue(true)"
-                  @blur="editTrue(false)"
-                  autofocus
-                  @input="editNode"
-                  v-model="value.node_text"
-                  :id="nodeid"
-                  class="drag-cancel"
-                  ref="nodetext"
-                  placeholder="Idea goes here! (auto saved every keystroke)"
-                ></textarea>
-              </div>
-            </div>
-            <div v-if="value.read_mode == true">
-              <p
-                class="read"
+      <vue-draggable-resizable
+        class="innernode"
+        v-if="nodeid == value.node_id && deleted == false"
+        :w="value.width"
+        :h="value.height"
+        :x="value.x_pos"
+        :y="value.y_pos"
+        :z="value.z_index"
+        :draggable="true"
+        :resizable="true"
+        style="border: 2px dashed black; background-color: rgb(155, 194, 216)"
+        :min-width="200"
+        :min-height="220"
+      >
+        <form>
+          <div v-if="value.read_mode == false">
+            <div v-for="value in myNodes" v-bind:key="value.node_id">
+              <textarea
+                v-if="nodeid == value.node_id"
+                @focus="editTrue(true)"
+                @blur="editTrue(false)"
+                autofocus
+                @input="editNode"
+                v-model="value.node_text"
                 :id="nodeid"
-                :inner-html.prop="nodetext | marked"
-              ></p>
+                class="drag-cancel"
+                ref="nodetext"
+                placeholder="Idea goes here! (auto saved every keystroke)"
+              ></textarea>
             </div>
-
-            <!-- <h3>Reactions</h3> -->
-
-            <div class="allemoji">
-              <div
-                class="eachemoji"
-                v-for="(emojis, index) in configEmoji"
-                :key="index"
-              >
-                <p v-if="nodeid == emojis.node_id">
-                  {{ emojis.emoji_text }}
-                </p>
-              </div>
+          </div>
+          <div v-if="value.read_mode == true">
+            <p
+              class="read"
+              :id="nodeid"
+              :inner-html.prop="nodetext | marked"
+            ></p>
+          </div>
+
+          <!-- <h3>Reactions</h3> -->
+
+          <div class="allemoji">
+            <div
+              class="eachemoji"
+              v-for="(emojis, index) in configEmoji"
+              :key="index"
+            >
+              <p v-if="nodeid == emojis.node_id">
+                {{ emojis.emoji_text }}
+              </p>
             </div>
-            <p class="info">*markdown supported &amp; autosaves</p>
-            <div class="btn-row">
-              <!-- <BaseButton buttonClass="danger" @click="deleteFlag()"
+          </div>
+          <p class="info">*markdown supported &amp; autosaves</p>
+          <div class="btn-row">
+            <!-- <BaseButton buttonClass="danger" @click="deleteFlag()"
                 >Delete</BaseButton
               > -->
-              <div v-if="value.read_mode == true">
-                <BaseButton
-                  class="read"
-                  buttonClass="action"
-                  @click="readFlag()"
-                  >Edit Mode
-                </BaseButton>
-              </div>
-              <div v-else>
-                <BaseButton
-                  class="read"
-                  buttonClass="action"
-                  @click="readFlag()"
-                  >Read Mode</BaseButton
-                >
-              </div>
-            </div>
-          </form>
-        </vue-draggable-resizable>
-      </div>
-
-      <!-- Same code as above when in any other mode other than move so you can drag nodes-->
-
-      <div v-else>
-        <vue-draggable-resizable
-          class="innernode"
-          v-if="nodeid == value.node_id && deleted == false"
-          :w="value.width"
-          :h="value.height"
-          :x="value.x_pos"
-          :y="value.y_pos"
-          :z="value.z_index"
-          @activated="onActivated"
-          @dragging="onDrag"
-          @resizing="onResize"
-          @dragstop="onDragstop"
-          @resizestop="onResizestop"
-          :drag-cancel="'.drag-cancel'"
-          style="border: 2px dashed black; background-color: rgb(155, 194, 216)"
-          :min-width="200"
-          :min-height="220"
-        >
-          <form>
-            <div v-if="value.read_mode == false">
-              <div v-for="value in myNodes" v-bind:key="value.node_id">
-                <div v-if="nodeid == value.node_id">
-                  <textarea
-                    @focus="editTrue(true)"
-                    @blur="editTrue(false)"
-                    autofocus
-                    @input="editNode"
-                    v-model="value.node_text"
-                    :id="nodeid"
-                    class="drag-cancel"
-                    ref="nodetext"
-                    placeholder="Idea goes here! (auto saved every keystroke)"
-                  ></textarea>
-                </div>
-              </div>
-            </div>
-            <div v-if="value.read_mode == true">
-              <p
-                class="read"
-                :id="nodeid"
-                :inner-html.prop="nodetext | marked"
-              ></p>
-            </div>
 
-            <!-- <h3>Reactions</h3> -->
-            <div class="allemoji">
-              <div
-                class="eachemoji"
-                v-for="(emojis, index) in configEmoji"
-                :key="index"
-              >
-                <p v-if="nodeid == emojis.node_id">
-                  {{ emojis.emoji_text }}
-                </p>
-              </div>
+            <div v-if="value.read_mode == true">
+              <BaseButton class="read" buttonClass="action" @click="readFlag()"
+                >Edit Mode
+              </BaseButton>
             </div>
-            <p class="info">*markdown supported &amp; autosaves</p>
-            <div class="btn-row">
-              <BaseButton buttonClass="danger" @click="deleteFlag()"
-                >Discard</BaseButton
+            <div v-else>
+              <BaseButton class="read" buttonClass="action" @click="readFlag()"
+                >Read Mode</BaseButton
               >
-              <div v-if="value.read_mode == true">
-                <BaseButton
-                  class="read"
-                  buttonClass="action"
-                  @click="readFlag()"
-                  >Edit Mode
-                </BaseButton>
-              </div>
-              <div v-else>
-                <BaseButton
-                  class="read"
-                  buttonClass="action"
-                  @click="readFlag()"
-                  >Read Mode</BaseButton
-                >
-              </div>
             </div>
-          </form>
-        </vue-draggable-resizable>
-      </div>
+          </div>
+        </form>
+      </vue-draggable-resizable>
     </div>
   </div>
 </template>
@@ -171,7 +79,7 @@
 <script>
 import { mapState } from 'vuex'
 import marked from 'marked'
-import lodash from 'lodash'
+//import lodash from 'lodash'
 var readmode
 
 export default {
diff --git a/app/src/components/OtherNodeslayer.vue b/app/src/components/OtherNodeslayer.vue
index 584f84b..41f5b8f 100644
--- a/app/src/components/OtherNodeslayer.vue
+++ b/app/src/components/OtherNodeslayer.vue
@@ -1,214 +1,103 @@
 <template>
   <div ref="othernodes" class="node">
     <div v-for="(value, index) in configPositions" v-bind:key="index">
-      <div v-if="toolmode == 'move'">
-        <!-- make draggable false as we are panning around -->
-        <vue-draggable-resizable
-          v-if="nodeid == value.node_id"
-          :w="value.width"
-          :h="value.height"
-          :x="value.x_pos"
-          :y="value.y_pos"
-          :z="value.z_index"
-          @activated="onActivated"
-          @dragging="onDrag"
-          @resizing="onResize"
-          :draggable="false"
-          :resizable="false"
-          @dragstop="onDragstop"
-          @resizestop="onResizestop"
-          style="border: 2px solid black; background-color: rgb(205, 234, 255)"
-          :min-width="200"
-          :min-height="220"
-        >
-          <p class="read" :id="nodeid" :inner-html.prop="nodetext | marked">
-            {{ nodeid }}
-          </p>
-          <!-- <h3>Reactions</h3> -->
+      <vue-draggable-resizable
+        v-if="nodeid == value.node_id"
+        :w="value.width"
+        :h="value.height"
+        :x="value.x_pos"
+        :y="value.y_pos"
+        :z="value.z_index"
+        @activated="onActivated"
+        @dragging="onDrag"
+        @resizing="onResize"
+        @dragstop="onDragstop"
+        @resizestop="onResizestop"
+        style="border: 2px solid black; background-color: rgb(205, 234, 255)"
+        :min-width="200"
+        :min-height="220"
+      >
+        <p class="read" :id="nodeid" :inner-html.prop="nodetext | marked">
+          {{ nodeid }}
+        </p>
+        <!-- <h3>Reactions</h3> -->
+        <div class="allemoji">
+          <div
+            class="eachemoji"
+            v-for="(emojis, index) in configEmoji"
+            :key="index"
+          >
+            <p v-if="nodeid == emojis.node_id">
+              {{ emojis.emoji_text }}
+            </p>
+          </div>
+        </div>
+        <div class="react" v-if="nodeid != undefined">
+          <!-- <h2>React</h2> -->
+          <div class="eeee">
+            <input :value="nodeid" name="id" readonly hidden />
+            <input
+              id="emojifield"
+              class="regular-input"
+              v-model="input"
+              readonly
+            />
 
-          <div class="react" v-if="nodeid != undefined">
-            <!-- <h2>React</h2> -->
-            <div class="eeee">
-              <input :value="nodeid" name="id" readonly hidden />
-              <input
-                id="emojifield"
-                class="regular-input"
-                v-model="input"
-                readonly
-              />
-              <div class="allemoji">
-                <div
-                  class="eachemoji"
-                  v-for="(emojis, index) in configEmoji"
-                  :key="index"
+            <emoji-picker @emoji="append" :search="search">
+              <div
+                class="emoji-invoker"
+                slot="emoji-invoker"
+                slot-scope="{ events: { click: clickEvent } }"
+                @click.stop="clickEvent"
+              >
+                <svg
+                  height="24"
+                  viewBox="0 0 24 24"
+                  width="24"
+                  xmlns="http://www.w3.org/2000/svg"
                 >
-                  <p v-if="nodeid == emojis.node_id">
-                    {{ emojis.emoji_text }}
-                  </p>
-                </div>
+                  <path d="M0 0h24v24H0z" fill="none" />
+                  <path
+                    d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"
+                  />
+                </svg>
               </div>
-              <emoji-picker @emoji="append" :search="search">
+              <div slot="emoji-picker" slot-scope="{ emojis, insert, display }">
                 <div
-                  class="emoji-invoker"
-                  slot="emoji-invoker"
-                  slot-scope="{ events: { click: clickEvent } }"
-                  @click.stop="clickEvent"
+                  class="emoji-picker"
+                  :style="{ top: display.y + 'px', left: display.x + 'px' }"
                 >
-                  <svg
-                    height="24"
-                    viewBox="0 0 24 24"
-                    width="24"
-                    xmlns="http://www.w3.org/2000/svg"
-                  >
-                    <path d="M0 0h24v24H0z" fill="none" />
-                    <path
-                      d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"
-                    />
-                  </svg>
-                </div>
-                <div
-                  slot="emoji-picker"
-                  slot-scope="{ emojis, insert, display }"
-                >
-                  <div
-                    class="emoji-picker"
-                    :style="{ top: display.y + 'px', left: display.x + 'px' }"
-                  >
-                    <div class="emoji-picker__search">
-                      <input type="text" v-model="search" v-focus />
-                    </div>
-                    <div>
-                      <div
-                        v-for="(emojiGroup, category) in emojis"
-                        :key="category"
-                      >
-                        <h5>{{ category }}</h5>
-                        <div class="emojis">
-                          <span
-                            v-for="(emoji, emojiName) in emojiGroup"
-                            :key="emojiName"
-                            @click="insert(emoji)"
-                            :title="emojiName"
-                            >{{ emoji }}</span
-                          >
-                        </div>
-                      </div>
-                    </div>
+                  <div class="emoji-picker__search">
+                    <input type="text" v-model="search" v-focus />
                   </div>
-                </div>
-              </emoji-picker>
-              <!-- <div class="btn-row">
-                <BaseButton buttonClass="action" @click="sentReact()"
-                  >Send Reaction</BaseButton
-                >
-              </div> -->
-            </div>
-          </div>
-        </vue-draggable-resizable>
-      </div>
-
-      <div v-else>
-        <vue-draggable-resizable
-          v-if="nodeid == value.node_id"
-          :w="value.width"
-          :h="value.height"
-          :x="value.x_pos"
-          :y="value.y_pos"
-          :z="value.z_index"
-          @activated="onActivated"
-          @dragging="onDrag"
-          @resizing="onResize"
-          @dragstop="onDragstop"
-          @resizestop="onResizestop"
-          style="border: 2px solid black; background-color: rgb(205, 234, 255)"
-          :min-width="200"
-          :min-height="220"
-        >
-          <p class="read" :id="nodeid" :inner-html.prop="nodetext | marked">
-            {{ nodeid }}
-          </p>
-          <!-- <h3>Reactions</h3> -->
-          <div class="allemoji">
-            <div
-              class="eachemoji"
-              v-for="(emojis, index) in configEmoji"
-              :key="index"
-            >
-              <p v-if="nodeid == emojis.node_id">
-                {{ emojis.emoji_text }}
-              </p>
-            </div>
-          </div>
-          <div class="react" v-if="nodeid != undefined">
-            <!-- <h2>React</h2> -->
-            <div class="eeee">
-              <input :value="nodeid" name="id" readonly hidden />
-              <input
-                id="emojifield"
-                class="regular-input"
-                v-model="input"
-                readonly
-              />
-
-              <emoji-picker @emoji="append" :search="search">
-                <div
-                  class="emoji-invoker"
-                  slot="emoji-invoker"
-                  slot-scope="{ events: { click: clickEvent } }"
-                  @click.stop="clickEvent"
-                >
-                  <svg
-                    height="24"
-                    viewBox="0 0 24 24"
-                    width="24"
-                    xmlns="http://www.w3.org/2000/svg"
-                  >
-                    <path d="M0 0h24v24H0z" fill="none" />
-                    <path
-                      d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"
-                    />
-                  </svg>
-                </div>
-                <div
-                  slot="emoji-picker"
-                  slot-scope="{ emojis, insert, display }"
-                >
-                  <div
-                    class="emoji-picker"
-                    :style="{ top: display.y + 'px', left: display.x + 'px' }"
-                  >
-                    <div class="emoji-picker__search">
-                      <input type="text" v-model="search" v-focus />
-                    </div>
-                    <div>
-                      <div
-                        v-for="(emojiGroup, category) in emojis"
-                        :key="category"
-                      >
-                        <h5>{{ category }}</h5>
-                        <div class="emojis">
-                          <span
-                            v-for="(emoji, emojiName) in emojiGroup"
-                            :key="emojiName"
-                            @click="insert(emoji), sentReact()"
-                            :title="emojiName"
-                            >{{ emoji }}</span
-                          >
-                        </div>
+                  <div>
+                    <div
+                      v-for="(emojiGroup, category) in emojis"
+                      :key="category"
+                    >
+                      <h5>{{ category }}</h5>
+                      <div class="emojis">
+                        <span
+                          v-for="(emoji, emojiName) in emojiGroup"
+                          :key="emojiName"
+                          @click="insert(emoji), sentReact()"
+                          :title="emojiName"
+                          >{{ emoji }}</span
+                        >
                       </div>
                     </div>
                   </div>
                 </div>
-              </emoji-picker>
-              <!-- <div class="btn-row">
+              </div>
+            </emoji-picker>
+            <!-- <div class="btn-row">
                 <BaseButton buttonClass="action" @click="sentReact()"
                   >Send Reaction</BaseButton
                 >
               </div> -->
-            </div>
           </div>
-        </vue-draggable-resizable>
-      </div>
+        </div>
+      </vue-draggable-resizable>
     </div>
   </div>
 </template>
-- 
GitLab