Мне нужно отфильтровать по свойствам "сегментов", в этом случае мне нужно отфильтровать по сегментам: [name: "general]
У меня есть следующий массив
const lines = [{
id: 1191,
name: "dev",
segments: []
},
{
id: 1192,
name: "credit",
folder: "Embarazadas",
segments: [{
"name": "general",
},
{
"name": "custom",
}
]
},
{
id: 1311,
name: "box",
segments: [{
"name": "custom",
"line_id": 1431,
"id": 21,
"active": true
}]
},
{
id: 2000,
name: "sin folder",
folder: null,
segments: [{
"name": "custom",
},
{
"name": "general",
}
],
},
{
id: 2000,
name: "credit card",
segments: [{
"name": "general",
}],
},
]
Мне нужно чтобы получить все объекты с сегментом "general"
я пытался с Рамдой сделать это, но я не получил результат, сначала я сделал карты линий, а затем фильтр. Проблема в том, что иногда атрибуты сегментов прибывает пустой
const filterLinesBySegments = (lines) => {
const filter = (line) => {
const hasSegments =R.filter(seg => seg["name"] === "general")(line.segments)
const newLine = R.compose(
R.assoc("segments", hasSegments),
)(line)
return newLine
}
const new= R.map(item => {
return R.filter(line => {
return filter(line)
})(item)
})(lines)
return new;
}