fix(MongoDB Node): Stop overwriting nested values on update (#15543)

This commit is contained in:
Elias Meire
2025-05-26 11:30:52 +02:00
committed by GitHub
parent b8ee275f0b
commit 3ee15a8331
3 changed files with 119 additions and 11 deletions

View File

@@ -80,13 +80,21 @@ export function validateAndResolveMongoCredentials(
}
}
export function prepareItems(
items: INodeExecutionData[],
fields: string[],
export function prepareItems({
items,
fields,
updateKey = '',
useDotNotation = false,
dateFields: string[] = [],
) {
dateFields = [],
isUpdate = false,
}: {
items: INodeExecutionData[];
fields: string[];
updateKey?: string;
useDotNotation?: boolean;
dateFields?: string[];
isUpdate?: boolean;
}) {
let data = items;
if (updateKey) {
@@ -112,7 +120,7 @@ export function prepareItems(
fieldData = new Date(fieldData as string);
}
if (useDotNotation) {
if (useDotNotation && !isUpdate) {
set(updateItem, field, fieldData);
} else {
updateItem[field] = fieldData;