mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-20 19:32:15 +00:00
feat: Add sticky notes support to the new canvas (no-changelog) (#10031)
This commit is contained in:
@@ -40,6 +40,7 @@ import type {
|
||||
INodeTypeDescription,
|
||||
INodeTypeNameVersion,
|
||||
ITelemetryTrackProperties,
|
||||
NodeParameterValueType,
|
||||
} from 'n8n-workflow';
|
||||
import { NodeConnectionType, NodeHelpers } from 'n8n-workflow';
|
||||
import { useNDVStore } from '@/stores/ndv.store';
|
||||
@@ -229,6 +230,21 @@ export function useCanvasOperations({
|
||||
ndvStore.activeNodeName = name;
|
||||
}
|
||||
|
||||
function setNodeParameters(id: string, parameters: Record<string, unknown>) {
|
||||
const node = workflowsStore.getNodeById(id);
|
||||
if (!node) {
|
||||
return;
|
||||
}
|
||||
|
||||
workflowsStore.setNodeParameters(
|
||||
{
|
||||
name: node.name,
|
||||
value: parameters as NodeParameterValueType,
|
||||
},
|
||||
true,
|
||||
);
|
||||
}
|
||||
|
||||
function setNodeSelected(id?: string) {
|
||||
if (!id) {
|
||||
uiStore.lastSelectedNode = '';
|
||||
@@ -443,7 +459,7 @@ export function useCanvasOperations({
|
||||
const nodeType = nodeTypesStore.getNodeType(newNodeData.type, newNodeData.typeVersion);
|
||||
const nodeParameters = NodeHelpers.getNodeParameters(
|
||||
nodeType?.properties ?? [],
|
||||
{},
|
||||
node.parameters ?? {},
|
||||
true,
|
||||
false,
|
||||
newNodeData,
|
||||
@@ -883,10 +899,16 @@ export function useCanvasOperations({
|
||||
targetNode: INodeUi,
|
||||
connectionType: NodeConnectionType,
|
||||
): boolean {
|
||||
const blocklist = [STICKY_NODE_TYPE];
|
||||
|
||||
if (sourceNode.id === targetNode.id) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (blocklist.includes(sourceNode.type) || blocklist.includes(targetNode.type)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const targetNodeType = nodeTypesStore.getNodeType(targetNode.type, targetNode.typeVersion);
|
||||
if (targetNodeType?.inputs?.length) {
|
||||
const workflowNode = editableWorkflowObject.value.getNode(targetNode.name);
|
||||
@@ -958,6 +980,7 @@ export function useCanvasOperations({
|
||||
setNodeActive,
|
||||
setNodeActiveByName,
|
||||
setNodeSelected,
|
||||
setNodeParameters,
|
||||
toggleNodeDisabled,
|
||||
renameNode,
|
||||
revertRenameNode,
|
||||
|
||||
Reference in New Issue
Block a user