From 6c638b8e2772787ea94ed493928ccbc0e3b3ce20 Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Mon, 5 Feb 2024 12:02:59 +0100 Subject: [PATCH] refactor(core): use `data` obj for labels in default nodes --- packages/core/src/components/Nodes/DefaultNode.ts | 9 ++++++--- packages/core/src/components/Nodes/InputNode.ts | 9 ++++++--- packages/core/src/components/Nodes/OutputNode.ts | 7 +++++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/packages/core/src/components/Nodes/DefaultNode.ts b/packages/core/src/components/Nodes/DefaultNode.ts index d6c83006..839e7a7f 100644 --- a/packages/core/src/components/Nodes/DefaultNode.ts +++ b/packages/core/src/components/Nodes/DefaultNode.ts @@ -4,14 +4,17 @@ import Handle from '../Handle/Handle.vue' import type { NodeProps } from '../../types' import { Position } from '../../types' -const DefaultNode: FunctionalComponent = function ({ +const DefaultNode: FunctionalComponent> = function ({ sourcePosition = Position.Bottom, targetPosition = Position.Top, - label, + label: _label, connectable = true, isValidTargetPos, isValidSourcePos, + data, }) { + const label = data.label || _label + return [ h(Handle as Component, { type: 'target', position: targetPosition, connectable, isValidConnection: isValidTargetPos }), typeof label !== 'string' && label ? h(label) : h('div', { innerHTML: label }), @@ -19,7 +22,7 @@ const DefaultNode: FunctionalComponent = function ({ ] } -DefaultNode.props = ['sourcePosition', 'targetPosition', 'label', 'isValidTargetPos', 'isValidSourcePos', 'connectable'] +DefaultNode.props = ['sourcePosition', 'targetPosition', 'label', 'isValidTargetPos', 'isValidSourcePos', 'connectable', 'data'] DefaultNode.inheritAttrs = false DefaultNode.compatConfig = { MODE: 3 } diff --git a/packages/core/src/components/Nodes/InputNode.ts b/packages/core/src/components/Nodes/InputNode.ts index 6d1b1e8f..c963faaf 100644 --- a/packages/core/src/components/Nodes/InputNode.ts +++ b/packages/core/src/components/Nodes/InputNode.ts @@ -4,19 +4,22 @@ import Handle from '../Handle/Handle.vue' import type { NodeProps } from '../../types' import { Position } from '../../types' -const InputNode: FunctionalComponent = function ({ +const InputNode: FunctionalComponent> = function ({ sourcePosition = Position.Bottom, - label, + label: _label, connectable = true, isValidSourcePos, + data, }) { + const label = data.label || _label + return [ typeof label !== 'string' && label ? h(label) : h('div', { innerHTML: label }), h(Handle as Component, { type: 'source', position: sourcePosition, connectable, isValidConnection: isValidSourcePos }), ] } -InputNode.props = ['sourcePosition', 'label', 'isValidSourcePos', 'connectable'] +InputNode.props = ['sourcePosition', 'label', 'isValidSourcePos', 'connectable', 'data'] InputNode.inheritAttrs = false InputNode.compatConfig = { MODE: 3 } diff --git a/packages/core/src/components/Nodes/OutputNode.ts b/packages/core/src/components/Nodes/OutputNode.ts index 023c258f..8663f3c1 100644 --- a/packages/core/src/components/Nodes/OutputNode.ts +++ b/packages/core/src/components/Nodes/OutputNode.ts @@ -6,17 +6,20 @@ import { Position } from '../../types' const OutputNode: FunctionalComponent = function ({ targetPosition = Position.Top, - label, + label: _label, connectable = true, isValidTargetPos, + data, }) { + const label = data.label || _label + return [ h(Handle as Component, { type: 'target', position: targetPosition, connectable, isValidConnection: isValidTargetPos }), typeof label !== 'string' && label ? h(label) : h('div', { innerHTML: label }), ] } -OutputNode.props = ['targetPosition', 'label', 'isValidTargetPos', 'connectable'] +OutputNode.props = ['targetPosition', 'label', 'isValidTargetPos', 'connectable', 'data'] OutputNode.inheritAttrs = false OutputNode.compatConfig = { MODE: 3 }