Files
crm.clientright.ru/n8n_flatten_data_code.js

29 lines
1.1 KiB
JavaScript
Raw Normal View History

// Код для Code ноды в n8n
// Преобразует вложенную структуру с data в плоский объект
// Вход: [{ "data": [{...объект1...}, {...объект2...}] }]
// Выход: [{...объект1 + объект2...}]
// Получаем входные данные
const inputData = $input.all();
// Обрабатываем каждый элемент входного массива
const result = inputData.map(item => {
// Проверяем наличие data
if (!item.json || !item.json.data || !Array.isArray(item.json.data)) {
return item.json; // Если структура не та, возвращаем как есть
}
// Объединяем все объекты из массива data в один объект
const mergedObject = {};
item.json.data.forEach(obj => {
// Копируем все свойства из каждого объекта в объединенный
Object.assign(mergedObject, obj);
});
return mergedObject;
});
// Возвращаем результат
return result;