fix(core): Missing pairing info (#7326)

Github issue / Community forum post (link here to close automatically):
This commit is contained in:
Michael Kret
2023-10-10 18:36:20 +03:00
committed by GitHub
parent 6479eb180f
commit e2c3c7aceb
52 changed files with 363 additions and 157 deletions

View File

@@ -18,6 +18,7 @@ import type {
SortRule,
WhereClause,
} from './interfaces';
import { generatePairedItemData } from '../../../../utils/utilities';
export function wrapData(data: IDataObject | IDataObject[]): INodeExecutionData[] {
if (!Array.isArray(data)) {
@@ -217,7 +218,8 @@ export function configureQueryRunner(
) {
return async (queries: QueryWithValues[], items: INodeExecutionData[], options: IDataObject) => {
let returnData: INodeExecutionData[] = [];
const emptyReturnData = options.operation === 'select' ? [] : [{ json: { success: true } }];
const emptyReturnData: INodeExecutionData[] =
options.operation === 'select' ? [] : [{ json: { success: true } }];
const queryBatching = (options.queryBatching as QueryMode) || 'single';
@@ -232,12 +234,17 @@ export function configureQueryRunner(
.flat();
if (!returnData.length) {
const pairedItem = generatePairedItemData(queries.length);
if ((options?.nodeVersion as number) < 2.3) {
if (emptyReturnData.length) {
emptyReturnData[0].pairedItem = pairedItem;
}
returnData = emptyReturnData;
} else {
returnData = queries.every((query) => isSelectQuery(query.query))
? []
: [{ json: { success: true } }];
: [{ json: { success: true }, pairedItem }];
}
}
} catch (err) {