JSFiddle - React, Tailwind, and code Playground

by gabriela b

JavaScript

var data = {
  fls : {
  inPackProducts: {
   linkedProducts : [
     
       {
       description: 'inPack',
       plc : 'b'
       },
      {
       description: 'inPack',
       plc : 'a'
       },
       {
       description: 'inPack',
       plc : 'c'
       }       
    ]
   },
   outOfPackProducts :  {
   linkedProducts : [
      {
      description: 'outOfPack',
       plc : 'a'
       },
       {
       plc : 'd'
       },
       {
       plc : 'e'
       }       
    ]
   }
  }
}

var filteredInPack = data.fls.inPackProducts.linkedProducts.filter( function(item) {
	return item.plc === 'a';
}).map( function(i) {
  return returned =  {
   "plc" : 'inPackProducts',
   "inPack" : true
 }
});

var filteredBoth = filteredInPack.concat(data.fls.outOfPackProducts.linkedProducts.filter( function(item) {
	return item.plc === 'a';
}).map( function(i) {
  return returned =  {
   "plc" : 'outOfPackProducts',
   "inPack" : false
 }
}));

var concateneted = data.fls.inPackProducts.linkedProducts.concat(data.fls.outOfPackProducts.linkedProducts).filter( function(item) {
	return item.plc === 'd';
}).map( function(i) {
  return returned =  {
   "plc" : i,
   "inPack" : data.fls.inPackProducts.linkedProducts.indexOf(i) !== -1
 }
});

console.log(concateneted);