From 636eeff9fe752c79cf987ff70bb3ca7e5bf151be Mon Sep 17 00:00:00 2001
From: Braks <78412429+bcakmakoglu@users.noreply.github.com>
Date: Thu, 21 Oct 2021 15:29:17 +0200
Subject: [PATCH] feat: use v-html for node labels
* add span tag as wrapper for node labels
feat(examples):
* Add overview example
---
.../NodeTypeChange/NodeTypeChangeExample.vue | 45 +++++
examples/Overview/Overview.vue | 172 ++++++++++++++++++
examples/router.ts | 10 +-
src/components/Edges/EdgeText.vue | 2 +-
src/components/Nodes/DefaultNode.vue | 4 +-
src/components/Nodes/InputNode.vue | 4 +-
src/components/Nodes/OutputNode.vue | 4 +-
src/composables/useKeyPress.ts | 1 +
8 files changed, 231 insertions(+), 11 deletions(-)
create mode 100644 examples/NodeTypeChange/NodeTypeChangeExample.vue
create mode 100644 examples/Overview/Overview.vue
diff --git a/examples/NodeTypeChange/NodeTypeChangeExample.vue b/examples/NodeTypeChange/NodeTypeChangeExample.vue
new file mode 100644
index 00000000..da2f933e
--- /dev/null
+++ b/examples/NodeTypeChange/NodeTypeChangeExample.vue
@@ -0,0 +1,45 @@
+
+
+
+
+
+
diff --git a/examples/Overview/Overview.vue b/examples/Overview/Overview.vue
new file mode 100644
index 00000000..209bfb7e
--- /dev/null
+++ b/examples/Overview/Overview.vue
@@ -0,0 +1,172 @@
+
+
+
+
+
+
+
+
diff --git a/examples/router.ts b/examples/router.ts
index b0322df8..5b1aa6f0 100644
--- a/examples/router.ts
+++ b/examples/router.ts
@@ -3,7 +3,7 @@ import { createRouter, createWebHashHistory, RouterOptions } from 'vue-router'
export const routes: RouterOptions['routes'] = [
{
path: '/',
- redirect: '/basic',
+ redirect: '/overview',
},
{
path: '/basic',
@@ -53,6 +53,14 @@ export const routes: RouterOptions['routes'] = [
path: '/multi-flows',
component: () => import('./MultiFlows/MultiFlowsExample.vue'),
},
+ {
+ path: '/node-type-change',
+ component: () => import('./NodeTypeChange/NodeTypeChangeExample.vue'),
+ },
+ {
+ path: '/overview',
+ component: () => import('./Overview/Overview.vue'),
+ },
]
export const router = createRouter({
diff --git a/src/components/Edges/EdgeText.vue b/src/components/Edges/EdgeText.vue
index 7a9ed4ae..6a6b254b 100644
--- a/src/components/Edges/EdgeText.vue
+++ b/src/components/Edges/EdgeText.vue
@@ -48,7 +48,7 @@ const { width = 0, height = 0, x = 0, y = 0 } = useElementBounding(edgeRef)
v-if="typeof props.label.component !== 'undefined'"
v-bind="{ ...props, ...props.label.props, width, height, x, y }"
/>
-
+
{{ props.label }}
diff --git a/src/components/Nodes/DefaultNode.vue b/src/components/Nodes/DefaultNode.vue
index b37d78af..581c2d42 100644
--- a/src/components/Nodes/DefaultNode.vue
+++ b/src/components/Nodes/DefaultNode.vue
@@ -19,8 +19,6 @@ const props = withDefaults(defineProps(), {
-
- {{ props.data?.label }}
-
+
diff --git a/src/components/Nodes/InputNode.vue b/src/components/Nodes/InputNode.vue
index 307ce45f..fc81b9f8 100644
--- a/src/components/Nodes/InputNode.vue
+++ b/src/components/Nodes/InputNode.vue
@@ -16,8 +16,6 @@ const props = withDefaults(defineProps(), {
-
- {{ props.data?.label }}
-
+
diff --git a/src/components/Nodes/OutputNode.vue b/src/components/Nodes/OutputNode.vue
index 5f9434db..ac6ff154 100644
--- a/src/components/Nodes/OutputNode.vue
+++ b/src/components/Nodes/OutputNode.vue
@@ -16,8 +16,6 @@ const props = withDefaults(defineProps(), {
-
- {{ props.data?.label }}
-
+
diff --git a/src/composables/useKeyPress.ts b/src/composables/useKeyPress.ts
index 16c697b5..6ad2f075 100644
--- a/src/composables/useKeyPress.ts
+++ b/src/composables/useKeyPress.ts
@@ -2,6 +2,7 @@ import { Ref } from 'vue'
import { onKeyDown, onKeyPressed, onKeyUp } from '@vueuse/core'
import { KeyCode } from '~/types'
+// todo cancel keypress for input dom nodes
export default (keyCode: KeyCode, onChange?: (keyPressed: boolean) => void): Ref => {
const isPressed = controlledRef(false, {
onBeforeChange(val, oldVal) {