| @@ -596,17 +596,16 @@ const getIterationItemType = ({ | |||
| arrayType = curr.find((v: any) => v.variable === (valueSelector).join('.'))?.type | |||
| } | |||
| else { | |||
| (valueSelector).slice(1).forEach((key, i) => { | |||
| for (let i = 1; i < valueSelector.length - 1; i++) { | |||
| const key = valueSelector[i] | |||
| const isLast = i === valueSelector.length - 2 | |||
| curr = curr?.find((v: any) => v.variable === key) | |||
| if (isLast) { | |||
| arrayType = curr?.type | |||
| } | |||
| else { | |||
| if (curr?.type === VarType.object || curr?.type === VarType.file) | |||
| curr = curr.children | |||
| } | |||
| }) | |||
| curr = Array.isArray(curr) ? curr.find(v => v.variable === key) : [] | |||
| if (isLast) | |||
| arrayType = curr?.type | |||
| else if (curr?.type === VarType.object || curr?.type === VarType.file) | |||
| curr = curr.children || [] | |||
| } | |||
| } | |||
| switch (arrayType as VarType) { | |||
| @@ -631,7 +630,7 @@ const getLoopItemType = ({ | |||
| }: { | |||
| valueSelector: ValueSelector | |||
| beforeNodesOutputVars: NodeOutPutVar[] | |||
| // eslint-disable-next-line sonarjs/no-identical-functions | |||
| }): VarType => { | |||
| const outputVarNodeId = valueSelector[0] | |||
| const isSystem = isSystemVar(valueSelector) | |||