node title number on copied iteration node (#23004)

This commit is contained in:
znn
2025-07-27 06:40:04 +05:30
committed by GitHub
parent 5411fd3757
commit e0fe158f0b
2 changed files with 13 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ import { useTranslation } from 'react-i18next'
import { useStoreApi } from 'reactflow' import { useStoreApi } from 'reactflow'
import type { import type {
BlockEnum, BlockEnum,
ChildNodeTypeCount,
Node, Node,
} from '../../types' } from '../../types'
import { import {
@@ -113,10 +114,17 @@ export const useNodeIterationInteractions = () => {
const nodes = getNodes() const nodes = getNodes()
const childrenNodes = nodes.filter(n => n.parentId === nodeId && n.type !== CUSTOM_ITERATION_START_NODE) const childrenNodes = nodes.filter(n => n.parentId === nodeId && n.type !== CUSTOM_ITERATION_START_NODE)
const newIdMapping = { ...idMapping } const newIdMapping = { ...idMapping }
const childNodeTypeCount: ChildNodeTypeCount = {}
const copyChildren = childrenNodes.map((child, index) => { const copyChildren = childrenNodes.map((child, index) => {
const childNodeType = child.data.type as BlockEnum const childNodeType = child.data.type as BlockEnum
const nodesWithSameType = nodes.filter(node => node.data.type === childNodeType) const nodesWithSameType = nodes.filter(node => node.data.type === childNodeType)
if(!childNodeTypeCount[childNodeType])
childNodeTypeCount[childNodeType] = nodesWithSameType.length + 1
else
childNodeTypeCount[childNodeType] = childNodeTypeCount[childNodeType] + 1
const { newNode } = generateNewNode({ const { newNode } = generateNewNode({
type: getNodeCustomTypeByNodeDataType(childNodeType), type: getNodeCustomTypeByNodeDataType(childNodeType),
data: { data: {
@@ -126,7 +134,7 @@ export const useNodeIterationInteractions = () => {
_isBundled: false, _isBundled: false,
_connectedSourceHandleIds: [], _connectedSourceHandleIds: [],
_connectedTargetHandleIds: [], _connectedTargetHandleIds: [],
title: nodesWithSameType.length > 0 ? `${t(`workflow.blocks.${childNodeType}`)} ${nodesWithSameType.length + 1}` : t(`workflow.blocks.${childNodeType}`), title: nodesWithSameType.length > 0 ? `${t(`workflow.blocks.${childNodeType}`)} ${childNodeTypeCount[childNodeType]}` : t(`workflow.blocks.${childNodeType}`),
iteration_id: newNodeId, iteration_id: newNodeId,
}, },
position: child.position, position: child.position,

View File

@@ -446,3 +446,7 @@ export enum VersionHistoryContextMenuOptions {
edit = 'edit', edit = 'edit',
delete = 'delete', delete = 'delete',
} }
export interface ChildNodeTypeCount {
[key: string]: number;
}